2012-06-11 22 views
6

我正在寫一個bash腳本,在該腳本中,我從輸入中讀取單個字符。我這樣做使用read -n 1 -s-n 1是隻讀一個字符; -s是「無聲」模式,其中輸入的字符將不可見。防止顯示鍵入的字符(如在termios中禁用「echo」屬性)

問題是,噹噹前執行的命令不是read(每當執行bash腳本中的其他命令時),該字符將顯示在終端中。

這是程序在終端中的正常行爲。要禁用此功能,通常會禁用回聲模式,例如使用termios庫。

如何在bash腳本中實現此目的?

我更喜歡純粹的bash/Unix命令(沒有像python,perl等其他腳本語言)的解決方案。

回答

14
stty -echo 
# Anything they type won't output here 
stty echo 
# Now it will 
+1

是的。這很快:)謝謝! (我可以在12分鐘內接受。) – leemes

相關問題