echo a b c | xargs bash -c 'for a in "$@"; do echo $a; read; done'
但是读取被忽略了.似乎第二个脚本也试图从管道输入它?我已经尝试过xargs -p但它并没有更好.
xargs -a <( echo A B C ) bash -c 'for x in "$@"; do echo $x; read; done'
请注意,这里$@错过了第一个参数(在这种情况下为’A’).这是因为bash -c将’A’放入$0(通常采用脚本文件的名称),$@提供$1,$2等…(在本例中为’B’和’C’).