xargs -0が空行を追加するのはなぜですか?

xargs -0が空行を追加するのはなぜですか?

例では、xargs -0空白行が追加されるのはなぜですか。これを防ぐにはどうすればよいですか?

$ touch a b c
$ find . -print0
../a./c./b
$ find . -print0 | sort --zero-terminated | xargs -0
. ./a ./b ./c
$ find . -print0 | sort --zero-terminated 
../a./b./c$ 

最後の出力は、入力記号が改行なしで同じ行にある../a./b./c$ ことです。$

ベストアンサー1

xargs -0 == xargs -0 echoデフォルトでは、echoは文字列の末尾に新しい行を印刷するため

次のコマンドを使用して同じ出力を得ることができます-n

find . -print0 | sort --zero-terminated | xargs -0 -n1 echo -n

おすすめ記事