再帰的なディレクトリ名の変更

再帰的なディレクトリ名の変更

ディレクトリ内のすべてのサブディレクトリ名に同じサフィックスを再帰的に追加する必要があります。これを行う簡単で安全な方法は何ですか?

答え1

findと の使用rename:

find . -depth -type d -not -name '.' -exec rename -n 's/(.*)/$1_foo/' {} +

_fooこれにより、すべてのディレクトリにサフィックスが再帰的に追加され、-n変更されるディレクトリの名前が表示されます。

名前に満足したら、-nアクションを実行するオプションを削除できます。

find . -depth -type d -not -name '.' -exec rename 's/(.*)/$1_foo/' {} +

関連情報