xargs コマンドは入力が空であっても(デフォルトでは)1回は実行します。なので、

find /path/to/file マッチしない条件式 | xargs ls

とかやると結果的にカレントディレクトリを ls します。空の場合に実行したくない場合は --no-run-if-empty を付けます(GNU 拡張)。

ところで、同様に

find /path/to/file マッチしない条件式 | xargs rm -rf

とかやったらカレントディレクトリを消し飛ばしてしまうのでは?と一瞬思ったんですが、 rm は ls と違って引数が無い場合は何もしないので安心です。

Trackback

no comment untill now

Add your comment now