ファイル名を一括置換する場合は以下のコマンドで可能です。
下記コマンドを実行すると実行するコマンドがどのようになるのかがわかります。
※実際にリネームは行われない
# foo を bar にする場合
ls foo*.jpg | awk '{print("mv "$1" "$1)}' | sed 's/foo/bar/2'
結果に問題なければ、後ろに | /bin/sh
を追加して実行します。
ls foo*.jpg | awk '{print("mv "$1" "$1)}' | sed 's/foo/bar/2' | /bin/sh
例: 拡張子を sh から txt に変更する
# AAA.sh, BBB.sh, CCC.sh の3つのファイルがある
ls
AAA.sh BBB.sh CCC.sh
# 置換結果の確認
ls *.sh | awk '{print("mv "$1" "$1)}' | sed 's/sh/txt/2'
mv AAA.sh AAA.txt
mv BBB.sh BBB.txt
mv CCC.sh CCC.txt
# 置換
ls *.sh | awk '{print("mv "$1" "$1)}' | sed 's/sh/txt/2' | /bin/sh
# 結果確認
ls
AAA.txt BBB.txt CCC.txt
これらのコマンドは Linux でも同じように使えます。
enjoy!
Written with StackEdit.
0 件のコメント:
コメントを投稿