2013-04-01 86 views
1

如何收集用戶輸入並存儲變量以用於jar文件執行的參數中?Linux bash shell腳本提示用戶輸入並存儲在變量中

使用讀取-p並從下面的鏈接bash的選擇命令,但得到錯誤的嘗試:How do I prompt for Yes/No/Cancel input in a Linux shell script? 這裏是我到目前爲止有:

#!/bin/bash 

echo "Hello "$USER"." 
echo "Enter System :" 
read name 
echo "Enter Format (JPG/PDF):" 
read format 

java -jar ~/folder/myjar.jar -input ~/scripts/file -output$format ~/output/$name.$format 

這部分工作中,它產生的輸出文件,但名稱變量丟失,格式變量在字符串ok中生成。運行此命令還會在輸入系統名稱後產生以下錯誤:「未找到命令」:「找不到有效的識別符」

+0

是, 「網絡連接」 沒有,如果狀態你原來的劇本還是你忘了在這裏複製時刪除它?否則,我不會看到您的用戶輸入內容有任何問題。 (雖然第一個提示可能會更好地寫成「Hello $ USER。」)。 – William

+0

「fi」不應該在那裏,忘記刪除。我還應該添加jar可執行字符串是ksar輸出的命令行。 – michael

+0

你可以用verbose標誌執行你的腳本,這樣我們就可以看到它在做什麼了? - >「bash -x myscript.sh」 – Jay

回答

0

看起來您可能有回車/窗口行結束符,請嘗試運行

dos2unix input.txt 

sed 's/^M$//' input.txt > output.txt 

tr -d '\r' <input.txt> output.txt 
相關問題