macのrenameの使い方がLinuxと異なる
macにもrenameコマンドがありますが、Linuxのrenameコマンドとは使い方が異なります。
まずは、homebrewでranameをインストールしましょう。
$ brew install rename
macのrenameでファイル名を変更
まずは、基本的な使い方になります。-sオプションを指定して、下記のように書きます。
rename -s 変更対象文字列 変更後文字列 ファイル
例えば、before.txtのbeforeの部分をafterに変更したい場合は、
下記のように書きます。
$ rename -s before after before.txt
下記が実行結果になります。before.txtのファイル名が変更されて、after.txtとなっています。
$ ls before.txt $ rename -s before after before.txt $ ls after.txt
macのrenameコマンドでカレントディレクトリ以下のファイル名を一括置換する
findでカレントディレクトリ以下のファイルを取得して、xargsでrenameコマンドに渡してあげます。
例えば、カレントディレクトリ以下の全てのファイルを対象に、ファイル名のbeforeの部分をafterに変更する場合は、下記のように書きます。
$ find . -type f | xargs rename -s before after
下記のような、ディレクトリとファイル構成だったとします。
$ tree
.
├── dir1
│ ├── before1.txt
│ └── before2.txt
└── dir2
├── before3.txt
└── before4.txt
2 directories, 4 files
そして、下記を実行すると、
$ find . -type f | xargs rename -s before after
カレントディレクトリ以下のファイル名のbeforeの部分がafterに変更されています。
$ tree
.
├── dir1
│ ├── after1.txt
│ └── after2.txt
└── dir2
├── after3.txt
└── after4.txt
2 directories, 4 files
