我想编写一个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


如果我运行此脚本,它将把我发送到菜单并让我选择一个数字。我想在脚本中提供此号码。有没有可能?

最佳答案

您应该做的第一件事是为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


但这是您应该避免的事情,因为该接口是为人类设计的,因此很可能不稳定。 (问题/答案的顺序可能会更改)

关于linux - Linux bash脚本带有参数?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45040940/

10-10 10:05