我想编写一个bash脚本来启动带参数的进程。
如下例所示:在终端中我将启动该过程,它将要求选择一个号码。 在终端,它将是:
user@u11:~$ process -someflag -someflag
Hello ! Choose an option
1.blabla
2.do that
3.do the other
>>
现在,我想在已经选择了该选项的情况下启动该过程,但我无法成功。
我可以写这个脚本:
#!/bin/bash
#script.sh
process -someflag -someflag
如果我运行此脚本,它会将我发送到菜单并让我选择一个号码。我想在脚本中提供这个数字。有可能吗?
答案 0 :(得分:0)
你要做的第一件事就是为process
寻找一些额外的标志,使其成为非交互式/以批处理模式启动它。
如果不支持。您可以将输入传递给process
。
choice=2
echo "$choice" | process -someflag -someflag
或者有多个问题:
# Quesions 1
choice_1=3
# Quesions 2
choice_2=4
(echo "$choice_1"; echo "$choice_2") | process -someflag -someflag
但这是你应该尽量避免的,因为界面是为人类设计的,它很可能不稳定。 (问题/答案的顺序可能会改变)