我有一個包含檔案的目錄,我需要對其名稱進行標準化。
我想audio_32.mp4.mp4更改為audio_0-32.mp4. 也就是說,我想在下劃線之后添加一個零,然后再引入一個連字符。這些檔案的不同之處在于其名稱中的數字。也就是還會有一個檔案名audio_33.mp4.mp4等等。我想保持所有其他檔案和模式不變。如果洗掉尾部.mp4和添加零作為單獨的任務處理,那很好。
我怎樣才能有效地做到這一點?
uj5u.com熱心網友回復:
在純 bash 中執行此操作:
for f in *.mp4; do
t="${f%.mp4}"
echo mv "$f" "${t/_/_0-}"
done
一旦您對輸出感到滿意,請洗掉echobeforemv以重命名檔案而不是列印mv命令。
uj5u.com熱心網友回復:
您的代碼將在哪個作業系統上運行?已經有很多用于此類事情的工具,因此您正在進入重新發明輪子的領域。
例如,Powertoys PowerRename 就是為此而設計的。
也就是說,如果我假設典型 GNU 工具集的可用性,您可以使用“basename”擺脫 mp4:
[user@host]$ basename audio_33.mp4.mp4 .mp4
audio_33.mp4
[user@host]$
其余的你可以用基本的字串操作來做:
[user@host]$ X=audio_33.mp4
[user@host]$ echo ${X/audio_/audio_0-}
audio_0-33.mp4
[user@host]$
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/515321.html
標籤:Python重击壳
