使用-0和xargs

时间:2011-09-17 04:00:06

标签: linux bash xargs

我正在尝试为NUL分隔的xargs提供输入。为此,我有这个:

$ echo -n abc$'\000'def$'\000' | xargs -0 -L 1

我得到了

abcdef

我想知道为什么不打印o / p

abc
def

2 个答案:

答案 0 :(得分:3)

您的主要问题是您忘记了-e

$ echo -n abc$'\000'def$'\000' |cat -v
abcdef

没有看到零字节。但是这个:

$ echo -en abc'\000'def'\000' |cat -v
abc^@def^@

更像是,^@cat -v显示零字节的方式。现在是xargs

$ echo -en abc'\000'def'\000' | xargs -0 -L 1
abc
def

从bash提示符处尝试help echo

答案 1 :(得分:1)

尝试将输入视为单引号字符串。

echo -ne "abc\0def\0" | xargs -0 -L 1