Re: [問題] Linux下Bash批次更改檔名(數百、千個檔)
我貢獻一下 python code 提供參考:
# encoding: utf8
import os
import re
import sys
if len(sys.argv) == 2:
dest_path = sys.argv[1]
else:
sys.stderr.write("Usage: %s path\n\n" % os.path.basename(sys.argv[0]))
sys.exit(1)
if not os.path.exists(dest_path) or not os.path.isdir(dest_path):
sys.stderr.write("Error: %s not exist or not directory\n\n" % dest_path)
sys.exit(1)
pattern = r'^海賊王 第([0-9]+)集 繁體中文翻譯.mp4$'
for item in os.listdir(dest_path):
result = re.match(pattern, item)
if result:
old_name = os.path.join(dest_path, item)
new_name = os.path.join(dest_path, "OnePiece v%s.mp4" % result.group(1))
print("%s --> %s\n" % (old_name, new_name))
os.rename(old_name, new_name)
要使用的話把上面程式碼複製到編輯器內,記得排版要相同。比方儲存成為 script.py 好了
就使用 python script.py 這樣執行。程式會需要傳入一個參數當指定路徑,比方這樣用:
python script.py mydirname
python script.py /home/user/dirname
提供參考,謝謝
上面是比較多功能,可以指定目錄。若只有自己該層所在目錄下簡單改成:
# encoding: utf8
import os
import re
pattern = r'^海賊王 第([0-9]+)集 繁體中文翻譯.mp4$'
for item in os.listdir("."):
result = re.match(pattern, item)
if result:
os.rename(item, "OnePiece v%s.mp4" % result.group(1))
--
如果真的愛一個作業系統 怎能不害怕不再能使用它 而我們必須接受現實
於是長大了 寂寞就是沒有了機會再用它 比沒有電腦還要寂寞
而那些點亮我們生命的作業系統 就彷彿電影中發生在暹邏的愛情故事
即使短暫使用也會刻骨銘心
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.117.155.17
※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1502886883.A.7BC.html
→
08/16 21:07, , 1F
08/16 21:07, 1F
→
08/16 21:13, , 2F
08/16 21:13, 2F
→
08/16 21:14, , 3F
08/16 21:14, 3F
→
08/16 21:15, , 4F
08/16 21:15, 4F
→
08/16 21:15, , 5F
08/16 21:15, 5F
→
08/16 21:16, , 6F
08/16 21:16, 6F
推
08/17 01:02, , 7F
08/17 01:02, 7F
推
08/17 05:22, , 8F
08/17 05:22, 8F
推
08/17 20:49, , 9F
08/17 20:49, 9F
→
08/18 09:28, , 10F
08/18 09:28, 10F
※ 編輯: kenduest (122.117.155.17), 08/18/2017 09:57:37
討論串 (同標題文章)
完整討論串 (本文為第 4 之 6 篇):
Linux 近期熱門文章
21
56
PTT數位生活區 即時熱門文章