繁体   English   中英

如何将参数传递给Shell脚本

[英]How to pass an argument to shell script

我对bash有点陌生,问题是我需要在一个程序中运行几组数据,我制作了一个bash脚本,该脚本可以自动执行...问题是程序启动时需要一些输入,我不知道如何在bash中使用它? 我执行程序:

$./bin/mg5_aMC

程序打开,我需要传递一些输入才能运行(mg5>是程序的环境):

mg5>launch file.lhe

该程序运行,并要求:

mg5> 1

然后再问一问,我需要按Enter。

mg5> (enter)

PD .:我编辑了问题,因为我想自己表现得不太好。

如果程序可以将其输入作为从命令行传递的参数来获取,则可以将参数写入文件中,将其命名为params ,然后执行

./bin/mg5_aMC $(<params)

从我的角度来看,您宁愿捕获用户的输入,而不是简单地将args传递给执行的脚本。 read命令允许您捕获用户的输入。 它回答了您的问题吗?

据我对您的问题的理解,您要么希望1)在调用Bash脚本时传递参数,要么2)在脚本中使用某种交互式shell。

对于#1,将参数传递到Bash脚本,这些链接可能会有所帮助:

基本上,您需要对脚本使用以下调用:

./bin/mg5_aMC launch xxx.lhe 1

在脚本中,您使用数字变量引用每个参数:

action=$1
file=$2
n=$3

至于#2,请参考以下链接/示例:

此站点上有很多在线资源,这些资源将为您提供更多示例和解释。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM