在示例中,为什么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