我有一個shell腳本(main.sh),其中前幾行通過用戶輸入讀取一些數據。如何通過shell腳本輸入提示輸入
echo "Enter the model !!"
read model
echo "Enter the Weight !!"
read wgt
echo "enter the data file !!"
read datafile
echo "Enter the two column names !!"
read coll1 coll2
這些變量$ model,$ wgt,$ datafile,$ coll1,$ coll2正在其他程序中使用。當我通過./main.sh運行它並分別輸入MODEL,WGT,DATA,COL1 COL2時,一切正常。但我想通過一個文件給這些輸入。所以我創建了另一個腳本文件,其中包含
echo "COL1 COL2" | echo "DATA" | echo "WGT" | echo "MODEL" | ./main.sh
它只接受第一個輸入即MODEL。有沒有辦法正確地做到這一點?
或' printf「%s \ n」MODEL WGT DATA'COL1 COL2'在一行代碼上。 – 2015-04-01 14:35:35
@JonathanLeffler確實。我幾乎寫了'printf'X \ nX \ nX \ nX \ n'',但認爲這是過度的,稍微難以閱讀。但是該版本更易於閱讀。 – 2015-04-01 14:37:32
這是行得通的。但是如果我想給一些數字(比如說我的WGT實際上是1.5),那我該怎麼辦? – 2015-04-01 15:20:30