Bash 手动将字符串列表传递给管道
如果一个命令返回一个字符串列表,我可以通过管道将其传递给另一个命令 例如:Bash 手动将字符串列表传递给管道,bash,Bash,如果一个命令返回一个字符串列表,我可以通过管道将其传递给另一个命令 例如: command1 | command2 假设command1返回两行。在没有生成命令行的情况下,是否有方法在命令行上执行相同的操作 我知道下面这句话不管用,但也许能更好地解释我的意思: ("string 1", "string 2) | command2 我想手动指定两条要发送到管道中的线,而不是使用命令生成它们 这可能吗?您可以使用echo命令: { echo "string 1"; echo "string 2"
command1 | command2
假设command1
返回两行。在没有生成命令行的情况下,是否有方法在命令行上执行相同的操作
我知道下面这句话不管用,但也许能更好地解释我的意思:
("string 1", "string 2) | command2
我想手动指定两条要发送到管道中的线,而不是使用命令生成它们
这可能吗?您可以使用
echo
命令:
{ echo "string 1"; echo "string 2"; } | command2
或printf
使用一个命令执行此操作:
printf 'string 1\nstring 2\n' | command2
但是如果有很多行,那么这里的文档通常更容易:
command2 <<EOF
string 1
string 2
EOF
command2你想过使用echo
吗?我尝试使用echo和\n
来分隔字符串,但它只是在meDid上回显了\n
你想过使用两个echo命令吗?也可以使用printf,比如printf“%s\n”string 1“string 2”
,因为printf将“循环”直到格式字符串使用了所有参数。