我正在嘗試編寫一個小型python腳本來通過搜索和替換來重命名一堆文件名。例如:批量搜索並用python代替文件名中的字符串
原文件名: MyMusic.Songname.Artist-mp3.iTunes.mp3
Intendet結果: Songname.Artist.mp3
我有這麼遠是:
#!/usr/bin/env python
from os import rename, listdir
mustgo = "MyMusic."
filenames = listdir('.')
for fname in fnames:
if fname.startswith(mustgo):
rename(fname, fname.replace(mustgo, '', 1))
(得到它從本網站據我記得)
無論如何,這將僅獲得在擺脫字符串開始,但不是文件名中的那些。
此外,我想也許使用一個單獨的文件(例如badwords.txt)包含應該搜索和替換的所有字符串,以便我可以更新它們而不必編輯整個代碼。
Content of badwords.txt
MyMusic.
-mp3
-MP3
.iTunes
.itunes
我一直在尋找相當一段時間,但沒有找到任何東西。將不勝感激任何幫助!
謝謝!
對於一些小的和骯髒的腳本來更改文件名的Perl工作得更好,特別是由於巨大的正則表達式的支持和運行系統的簡易性:你 可以通過添加
'(?i)'
到pat
開始忽略大小寫命令。 –