2017-07-11 119 views
-1

我想編寫一個bash腳本來啓動一個包含參數的進程。帶參數的Linux bash腳本?

如下例所示:在終端中,我將啓動該過程,並且它會要求選擇一個數字。 在終端這將是:

[email protected]:~$ process -someflag -someflag 
Hello ! Choose an option 
1.blabla 
2.do that 
3.do the other 

>> 

現在,我想與在它已經選擇的選項啓動過程,但我不能成功。

我可以寫這個劇本:

#!/bin/bash 
#script.sh 

process -someflag -someflag 

如果我運行該腳本將送我的菜單,讓我選擇一個號碼。我想在腳本中提供這個號碼。有沒有可能?

+0

有可能性。你有沒有嘗試過搜索「傳遞參數到bash腳本」之類的東西? –

+0

也許https://stackoverflow.com/q/192249/2988730? –

+0

不,這不回答我的問題,因爲我們無法將參數1或2或3傳遞給我正在討論的過程,然後我們已經啓動它並顯示菜單... –

回答

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 

但是,這是你應該儘量避免的接口設計對於人類是最有可能並不穩定。 (問題順序可能會改變)

+2

希望你不介意我的編輯。這只是一個跳出我的東西。 –

+0

謝謝你的工作! –