2013年10月2日水曜日

OSXでのファイル名の一括置換

OSXでのファイル名の一括置換

ファイル名を一括置換する場合は以下のコマンドで可能です。

下記コマンドを実行すると実行するコマンドがどのようになるのかがわかります。
※実際にリネームは行われない

# 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!

source: One-line batch file renamer - Mac OS X Hints


Written with StackEdit.

  • この記事をシェアする

  • このエントリーをはてなブックマークに追加
  • このブログの更新をチェックする

  • follow us in feedly