通过stdin多次将参数传递给shell脚本

时间:2019-02-01 04:02:50

标签: bash stdin

我有一个脚本StartProcess.sh,该脚本接受stdin-3中的两个选项和文件名test.xml

如果我运行以下脚本,它将正确执行,然后再次等待输入。 我想以某种方式将3test.xml n次传递给StartProcess.sh。我该如何实现。

./StartProcess.sh << STDIN -o other --options 
3
test.xml
STDIN

1 个答案:

答案 0 :(得分:2)

您可以运行循环以在循环中多次传递参数,并在管道上运行脚本。这样,脚本只需启动一次,参数就可以在您选择的任意次数上通过stdin发送

count=3
for (( iter = 0; iter < 3; iter++ )); do
    echo "3" "test.xml"
done | StartProcess.sh

但是我不确定是否要传递文字字符串test.xml作为参数或文件内容。