我是bash的新手,我需要在一个程序中运行几组数据,我制作了一个允许我自动执行的bash脚本...问题是当程序启动时需要它一些输入,我不知道怎么把它放在bash里面? 我执行程序:
$./bin/mg5_aMC
程序打开,我需要传递一些输入来运行(mg5>是程序的环境):
mg5>launch file.lhe
程序运行,并要求提供一些东西:
mg5> 1
然后再问一些东西,我需要按回车..
mg5> (enter)
PD:我编辑了这个问题,因为我觉得自己没有表达得很好......
答案 0 :(得分:0)
如果程序可以将其输入作为从命令行传递的参数,那么您可以将参数写入文件中,例如调用它params
,然后执行
./bin/mg5_aMC $(<params)
答案 1 :(得分:0)
从我看到的,你宁愿想要捕获用户的输入,而不是简单地将args传递给执行的脚本。 read
命令允许您捕获用户的输入。它回答了你的问题吗?
答案 2 :(得分:0)
根据我对你的问题的理解,你要么想要1)在调用你的Bash脚本时传递参数,要么2)你的脚本中有某种交互式shell。
对于#1,将参数传递给Bash脚本,这些链接可能会有所帮助:
基本上,您需要对脚本使用以下调用:
./bin/mg5_aMC launch xxx.lhe 1
在您的脚本中,您使用带编号的变量引用每个参数:
action=$1
file=$2
n=$3
关于#2,请参考以下链接/示例:
网上有很多资源,本网站上会提供更多示例和解释。