我有一个使用标准输入和输出的控制台程序。
例如我调用 :./program_name
然后输入输入
我需要在一个命令中执行这两个操作,例如:(./program_name 'my input string'
此命令返回Abort trap: 6
)。
怎么做?
我没有该程序的源代码。
答案1
使用此处的字符串
./program_name <<< 'my input string'
或者此处的文档(较长,但标准):
./program_name <<EOF
my input string
EOF
答案2
echo my input string | ./program_name
或者,如果你是一个引用者:
echo "my input string" | ./program_name
另一个方便的技巧是使用子 shell 来收集多个源的输出,例如:
( echo header; cat /etc/passwd; echo footer ) | ./program_name