如果设置了 -I,为什么 xargs 似乎以不同的方式处理分隔符

如果设置了 -I,为什么 xargs 似乎以不同的方式处理分隔符

xargs -n1 -I '{}' echo '{}' <<< "foo bar baz"印刷 foo bar baz

同时xargs -n1 echo <<< "foo bar baz"打印

foo
bar
baz

是什么导致了这种行为?

答案1

指定-I 更改分隔符

-我 复制字符串

标准输入中的参数只能用未转义的 <newline> 字符分隔,而不是用 <blank> 字符分隔。

foo在第二个示例中, ,bar和之间的空格baz分割输入;但在第一个中,输入被视为单个单元,因为它是单行。

相关内容