xargsを使用する方が使用していないよりも高速ですか?

xargsを使用する方が使用していないよりも高速ですか?

これは速いですか?

find /tmp -name core -type f | xargs /bin/rm -f

以下を行います。

find /tmp -name core -type f -exec /bin/rm -f {} \;

もしそうなら、それを使用するとxargs全体の速度が向上しますか?

(マンページから例を取得しましたxargs。)

ベストアンサー1

Mattがすでに述べたように、一般的に次のことを知る必要があります。すべてNULbyte(文字列の末尾を区切るため)とthe /(パス要素を区切るため)以外の文字がファイル名に表示されることがあります。したがって、あなたのxargs例は(GNUシステムで)

find /tmp -name core -type f -print0 | xargs -0 /bin/rm -f

これに相当するのは-execfind+だが\;

find /tmp -name core -type f -exec /bin/rm -f {} +

このバージョンでは、各ファイルを呼び出さずに、以前の/bin/rmようにパラメータをバンドルしますxargs

おすすめ記事