フォルダ調査作業

フォルダ調査作業

3つのサブフォルダがあるフォルダがあり、各サブフォルダには6つのファイルが含まれています。各サブフォルダには、:NOPMファイル名を含む2つのファイルがあります。

すべてのフォルダとそのサブフォルダを確認するには、シェルスクリプトを作成する必要があります。の付いたファイル名がある場合は、:NOPM名前から削除する必要があります。同じ名前の別のファイルがある場合は、そのファイルを削除して各対話をlog.txtに記録する必要があります。

答え1

find /mydirectory -maxdepth 3 -iname *:nomp* -execdir bash -c 'for f; do base=${f##*/}; mv -- "$f" "${f%/*}/${base//:nomp/whateverYouWant}" && echo $f >> /PATH/log.txt; done' _ {} +

ところで、execdirを使ったので、おそらく${base//:nomp.....}の代わりにbase=${f##*/}を使う必要はないでしょう。 「base」を「.」に置き換えることができます。

関連情報