検索を使用すると、引数のリストが長すぎます。エラー

検索を使用すると、引数のリストが長すぎます。エラー

私のfindコマンドは次のとおりです。

find /jobs/logs/* -prune -name '*.log' -type f -mtime +1 |
    while read LOGFILE
    do
        echo $LOGFILE
    done

次のエラーが原因でこの操作が失敗しました。

/usr/bin/find: arg list too long

誰でもこの問題を解決する方法を提案できますか?

(これが続く私の前の質問.)

ベストアンサー1

ディレクトリを繰り返してみましょうfind。それがまさにそのことです!マイベース以前の回答:

find /jobs/logs/. -name . -o -type d -prune -o
                  -type f -mtime +1 -exec sh -c 'echo "$0"' {} \;

-execそれにもかかわらず、私がコマンドを呼び出したことを忘れないでくださいfind。それがまさにコマンドの目的です。

また、read LOGFILE実際に参考にしてください。いいえ入力行を読みます。先行スペースを削除し、バックスラッシュを解釈します。 1行を読む信頼できる方法はですIFS= read -r LOGFILE

おすすめ記事