[英]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.