特定のディレクトリで特定のファイルを見つけるために、次のコマンドを実行しています。
find ./rgs/test/maesXX/master/stdlist -name \*.extract \
-mtime +30 \! -size 0 -exec ls -lrt {} \;
ここで、XXは1から100までの数字です。
これを達成するために正規表現を使用できますか?どうすればいいですか?別の方法がありますか?
答え1
に複数のパスを渡すことができるので、find
最善の方法(IMHO)はシェルに拡張を実行させることです。
maes
開始するディレクトリがない場合は、これで十分で簡単です。
find ./rgs/test/maes*/master/stdlist ...
ただし、パターンを正確に一致させる必要がある場合は、次のようにします。
find ./rgs/test/maes[0-9][0-9]/master/stdlist ...
maes00
-maes99
または
find ./rgs/test/maes{[1-9],[1-9][0-9],100}/master/stdlist ...
For—— maes1
(maes100
どのような状況なのかわかりません)。