bashでパスワードを入力してもらう
bashでパスワードを入力してもらう必要があるコードを書くことになったのですが、普通にreadで受け取ると画面に表示されるのですね。
どうにかならないのかなーと
# man read
してみると
-s Silent mode. If input is coming from a terminal, characters are not echoed.
とのこと。
というわけで
# echo -n 'password: '; read -s PASS; echo $PASS
とすると入力が隠され、
# echo -n 'password: '; read PASS; echo $PASS
だと入力が見えるようになります。
ちなみに
# bash --version GNU bash, version 3.2.25(1)-release (x86_64-redhat-linux-gnu) Copyright (C) 2005 Free Software Foundation, Inc.
でした。