仕事でshellを書いていたんですけど、エコーバックなしの標準入力ってどうやるのか解らなくて、 探しまくりました。
#!/bin/sh
echo "パスワード:\c"
read PASS
echo "入力したパスワード:\c"
echo $PASS
これじゃあ、入力したパスワードが丸見えなので、非常にかっこわるい。 調べてみたら、stty(set ty)を使えば良いらしい。
#!/bin/sh
echo "パスワード:\c"
stty -echo
read PASS
stty echo
echo
echo "入力したパスワード:\c"
echo $PASS
'stty -echo'でエコーバックをけして、'stty echo'でエコーバックするように戻せる。 初め試しに'stty -echo'だけ実行したら、CLIすべてでエコーバックでなくなってビビッたけどね。