2009-02 / 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
2009-02-19 (木)
■ 入力したパスワードを端末に表示させない方法 [sh]
スクリプト中でこんなプロンプトを出して、パスワードを読み取りたい場合。
Password:
read コマンドを使えば可能だが、入力した文字列が見えてしまう。そこで
"stty -echo" を使う。端末への表示を抑制できる。入力が終わったら
"stty echo" で元に戻す。
trap 'stty echo' INT stty -echo printf "Password: " read password echo "" stty echo trap INT
trap を使っているのは、スクリプトが途中で終了した場合も
"stty echo" させるため。
最後の trap は sh だとエラーになってしまった。bash だと OK。どんな
意味なんだろう?
[
コメント |
メッセージ送信 |
固定リンク
]
2009-02 / 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
最終更新時間: 2010-07-27 06:00


