拡張子がわずかに異なる複数のファイルの名前を変更するには?

拡張子がわずかに異なる複数のファイルの名前を変更するには?

複数のファイルがあり、すべて同様の命名パターンを持っています。たとえば、次のようになります。

{filename}.jpeg{random number}

.jpeg拡張子を持つようにこのファイルの名前を変更したいと思います。どうすればいいですか?

ベストアンサー1

Larry WallのPerlの名前変更がある場合

rename 's/[.]jpeg[0-9]*/.jpeg/' *.jpeg[0-9]*

Util-Linuxのみがある場合、名前の変更は機能しません。

Bashでforループを使用できます

for n in *.jpeg[0-9]*
do mv -i "$n" "${n%%.jpeg[0-9]*}.jpeg"
done

${var%%pattern}標準パラメータ拡張値に展開し、一致のvar(最も長い)末尾の部分を削除しますpattern。もしそうならn、そうですfoo.jpeg123。(原因かもしれません)${n%%.jpeg[0-9*}foofoo.jpeg1abcfoo

おすすめ記事