このコマンドを実行すると:
root:/home/mws 0$ ls -lrt `find /home/data/ll_misc_logs/ -mtime +20`
また、mtime 設定 (20 日) を満たすファイルはありません。現在のディレクトリ /home/mws の内容が一覧表示されます。なぜですか? 何も返さない、またはメッセージを返す方法はありますか?
このコマンドを実行すると:
root:/home/mws 0$ ls -lrt `find /home/data/ll_misc_logs/ -mtime +20`
また、mtime 設定 (20 日) を満たすファイルはありません。現在のディレクトリ /home/mws の内容が一覧表示されます。なぜですか? 何も返さない、またはメッセージを返す方法はありますか?
mtime 設定を満たすファイルがない場合、の出力はfind ....
... なしに展開されます。その場合、コマンドは になりls -lrt
、常に現在のディレクトリがリストされます。
通常の実行であまり多くのファイルがない場合は、次の方法でうまくいく可能性があります。
find /home/data/ll_misc_logs -mtime +20 -print0 | xargs -0 -r ls -ltr
しかし、非常に多くのファイルを取得xargs
して複数の呼び出しに分割することを決定した場合、おそらく希望通りの結果にはなりません。
それが私を導きます...あなたは正確に何をしようとしていますか? 表面的には、「変更時間順に古いファイルを表示してください」のように見えますが、より効率的な (そしてエラーが発生しにくい) 方法で解決できる大きなものの一部である可能性があります...