ファイル名から特定の単語を削除する

ファイル名から特定の単語を削除する

次のフォルダには多くのファイルがあります。

compose_icon_200x200.png
mail_icon_200x200.png
attach_icon_200x200.png
delete_icon_200x200.png

すべてのファイル名から_200x200を削除したいです。頑張りました

find . -name '*_200x200*' -exec bash -c 'mv "$0" echo $0' "{}" \;

ただし、次のエラーが発生します。

./mail_icon_200x200.png: ./mail_icon_200x200.png: Permission denied

ベストアンサー1

for f in *_200x200*; do
    mv -- "$f" "${f/_200x200/}"
done

またはperlコマンドがある場合rename

rename 's/_200x200//' ./*_200x200*

おすすめ記事