ファイル名の拡張子を変更する
chextensions.sh OldExtension NewExtension
引数に変更前の拡張子と変更後の拡張子を指定し、カレントディレクトリにある
変更したいファイルの拡張子を変更する。
for文で変更したい拡張子のファイル名をfindで指定。
findで.を指定するときはエスケープする。
mvのiオプションは同じファイル名がある場合は確認する。
#!/usr/bin/sh if [ "$#" -ne 2 ]; then echo "Usage : chextension.sh OldExtension NewExtension" exit 1 fi for oldfilename in `find . -name "*\.$1"`; do newfilename=`echo $oldfilename | sed "s/$1/$2/"` mv -i "$oldfilename" "$newfilename" done