2

ユーザーが提供したフォルダーにあるすべての .js および .html ファイルを出力するシェル スクリプトがあります。サブフォルダーとそのすべてのファイルを検索結果から除外する必要があります。私はこれを行うためにfindコマンドを使用しています。私が現在持っているコマンドは、このサブフォルダーの下のすべてのファイルを除外しますが、結果にサブフォルダーを出力します。「CrashLog」というフォルダーとそのすべてのファイルを除外したいと考えています。このサブフォルダーへのパスは、「Users/test/Desktop/Units/JSunit/CrashLog/」です。

私が使用している検索コマンドは次のとおりです。

find "Users/test/Desktop/Units" -name CrashLog -prune -o -name "*.html" -o -name "*.js" 

出力には「Users/test/Desktop/Units/JSunit/CrashLog/」が含まれます。どうすればこれを除外できますか? grep を使用できることはわかっていますが、find 自体を使用した解決策がある場合はそれを好むでしょう。私はMac OSXで実行しています。

4

2 に答える 2

2

-print最後に、ファイル拡張子テストを囲む括弧が必要です。

find "Users/test/Desktop/Units" -name CrashLog -prune -o \( -name "*.html" -o -name "*.js" \) -print
于 2012-04-05T02:33:59.880 に答える
1
find "Users/test/Desktop/Units" -name CrashLog -prune -a \( -name "*.html" -o -name "*.js" \)
于 2012-04-05T01:35:53.747 に答える