私の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
。