2014-09-22 63 views
0

創建了一個包含這一個簡單的shell文件:讀-p返回 「讀:無查詢過程中」 使用Korn shell的KSH

read -p ThePrompt TheSomthing 
echo $TheSomething 

運行它,並返回

-ksh[1]: read: no query process 

我已經嘗試單引號,雙引號圍繞ThePrompt和手冊頁明確說「-p」是使用提示符,但它不適合我。誰能告訴我我做錯了什麼?謝謝!

+0

你給的語法對於bash,不是Korn shell的。 – cdarke 2014-09-22 16:31:33

+0

是的,我現在注意到了。我發佈了我的工作,我猜這就是我所需要的。感謝回覆。 – 2014-09-22 17:43:34

回答

1

從一派man page

的-un和-p選項導致輸入到從文件描述符n或當前共同處理來讀取(參見協同進程以上有關此評論),分別。如果使用-s選項,輸入將被保存到歷史文件中。

要使用的提示,而不是這樣寫:

read TheSomething?'ThePrompt' 
0

我發現圍繞一個字:

回聲-n '提示:' 讀取輸入1 回聲-n '提示:' 閱讀輸入2 。 。 。

我不知道爲什麼-p不能像手冊頁中所述的那樣工作。如果有任何人有洞察力,請回復。

謝謝!

+0

在ksh中'read'的正確語法由@abacabadabacaba給出。 – cdarke 2014-09-24 08:15:06

1

KSH中您可以使用此格式:

echo "ThePrompt\c" read TheSomthing echo $TheSomething