私はこのようなディレクトリツリーを持っています
.
|-- players
| |-- red_alice.plr
| |-- red_bob.plr
|-- resources
| |-- red_cash.rsc
| |-- red_food.rsc
すべてのディレクトリを繰り返し、「red」で始まるファイルの名前を「blue」で始まるように変更したいと思います。
私はこれがfindとsedコマンドの仕事だと思いますが、状況をどのように表現するのかわかりません...
find . -name "red*" -type f
それでは、この出力を使用して赤の名前を青に変更するにはどうすればよいですか?
ベストアンサー1
renameコマンドを使用してこれを実行できます。
find . -type f -name "red*" -exec rename s/red/blue/g "{}" +;
したがって、名前で始まるファイルを見つけて、red
すべてのファイルを次の単一のコマンドに入れます。
rename s/red/blue/g red_first red_second
現在のディレクトリの下のすべてのディレクトリにあるファイルを検索します。