![見出し画像](https://assets.st-note.com/production/uploads/images/20260052/rectangle_large_type_2_d699e14f9358b27eeba129777504c471.png?width=800)
pythonでフォルダ名変更
今回はただの備忘録です。pythonを使ってファイル名とかフォルダ名を変更させるときに参考まで。
(背景)ついにフォルダ名変更すら面倒に感じてきた
普段特定作業を行った後、定期的に該当のフォルダを一定規則で改名しています。複数あるので右クリック→名前の変更すら億劫に感じてきました。怠惰の極みです。たぶんこれらはOSのシェルとか叩いたほうが早いかもですが、せっかくなのでpythonの出番。
(作ったもの)特定フォルダに特定文字を付与
コマンドプロンプトやターミナルに当該フォルダをドラックドロップして、シンプルに「DONE_」と先頭に付与させるだけの単純なものです。
(参考)
こちらにほぼ全て記載されていることです。
(完成品)
# coding: UTF-8
#!/usr/bin/python3
import os
while True:
target_dir_full = input('Enter target direction or Press n to end:').replace('"','').strip()
if target_dir_full == 'n':break
elif os.path.exists(target_dir_full):
target_dir_last = os.path.basename(target_dir_full)
changed_dir_full = os.path.dirname(target_dir_full) + os.path.sep + 'DONE_' + target_dir_last
os.rename(target_dir_full, changed_dir_full)
print('>>>>> Rename accomplished.')
else:
print('>>>>> No directory detected. Try again.')
ドラックドロップでディレクトリパスが入力されるので、パスを入れていき処理を行う、「n」キーを入力するまでループ。パスにつく「”」は削除。
os.path.basenameでその最下層のディレクトリ名を、os.path.dirnameで親ディレクトリを取得。それら使ってos.renameで名前変えるだけ。
せいぜいmacとwinでディレクトリの区切り文字が違うので(スラッシュかバックスラッシュか)、 os.path.sep を使うくらいです。もっと簡単にできる方法もあるかもしれない。
(まとめ)アウトプットと省エネ主義は続く
こんな単純でpython使うまでもないことですが、基本的に「単調作業を繰り返すこと」と「知っている風で終わること」のが好きではないので、これからも共有していきます。
この記事が気に入ったらサポートをしてみませんか?