
次の名前のファイルがあります。
63018933.mp4?トークン=1325697436_b0c3e70c6e339380b4a484c576a8c287
63808488.mp4?トークン=1325697401_4ae5f7a68d93873c8881b303e7655e14
たとえば、63018933.mp4(mp4の後の文字を削除)に名前を変更するにはどうすればよいですか?
答え1
このツールがある場合rename(1)
(DebianまたはDebianベースのLinux(Ubuntuとその派生製品を含む)がある場合は、このツールを使用できます):
rename -n 's/\.mp4.*$/.mp4/' *mp4*
正しいパターンがあると確信している場合は、削除-n
(模擬実行)して正常に実行するようにしてください。
rename(1)
与えられたファイル名にPerl正規表現を適用します。
他のほとんどのLinuxディストリビューションには、rename
この特定の名前変更モードには役立たない他のファイルの名前変更手順があります。
答え2
これは1つの方法です。
for file in *.mp4\?token*; do mv --no-clobber "$file" "${file%%\?*}"; done
答え3
そしてmmv:
mmv -n "*.mp4*" "#1.mp4"
出力が正しい場合は「-n」を削除してください。