.xml
ディレクトリ内で少なくとも30日間変更されていないか、またはで終わるすべてのファイルを見つけたいです.out
。正しい構文を構成するためにいくつかの参照をまとめる試みは次のとおりですfind
。
find . -mtime +30 -type f / (-name "*.xml -o -name "*.out" ) / -print
私はますます
-bash: syntax error near unexpected token '('
私の構文に何がありましたか?
答え1
ほぼ全部来ました!これは働きます:
find . -mtime +30 -type f \( -name \*.xml -o -name \*.out \)
あなたの/ (
ものは\(
(エスケープされた左角かっこです。シェルが特別な処理を実行することがわかったので、エスケープを使用する必要があります(
)\
実際に) /
は同じでなければなりません\)
。名前は、*
指定された拡張子で終わるすべての項目と一致する必要があり、エスケープする必要があるため".xml"
(欠落している閉じた引用符を追加しました)は、\*.xml
orになります"*.xml"
。
最後に、-print
これはfind
基本的な操作なので削除できます。