通过 stdin 多次将参数传递给 shell 脚本
Passing arguments to a shell script via stdin multiple times
我有一个脚本 StartProcess.sh
,它接受 stdin
中的两个选项 - 3
和一个文件名 test.xml
。
如果我运行下面的脚本,它会正确执行,并再次等待输入。
我想以某种方式将 3
和 test.xml
n
次传递给 StartProcess.sh
。我如何实现这一点。
./StartProcess.sh << STDIN -o other --options
3
test.xml
STDIN
您可以 运行 循环在循环中多次传递参数,并 运行 通过管道传递脚本。这样,脚本只会启动一次,参数会根据您的选择多次通过标准输入发送
count=3
for (( iter = 0; iter < 3; iter++ )); do
echo "3" "test.xml"
done | StartProcess.sh
但我不确定您是想将文字字符串 test.xml
作为参数还是文件内容传递。
我有一个脚本 StartProcess.sh
,它接受 stdin
中的两个选项 - 3
和一个文件名 test.xml
。
如果我运行下面的脚本,它会正确执行,并再次等待输入。
我想以某种方式将 3
和 test.xml
n
次传递给 StartProcess.sh
。我如何实现这一点。
./StartProcess.sh << STDIN -o other --options
3
test.xml
STDIN
您可以 运行 循环在循环中多次传递参数,并 运行 通过管道传递脚本。这样,脚本只会启动一次,参数会根据您的选择多次通过标准输入发送
count=3
for (( iter = 0; iter < 3; iter++ )); do
echo "3" "test.xml"
done | StartProcess.sh
但我不确定您是想将文字字符串 test.xml
作为参数还是文件内容传递。