エコーなしでパスワードを検索するためのコマンドラインユーティリティ

エコーなしでパスワードを検索するためのコマンドラインユーティリティ

Bashの組み込み読み取りコマンドはそれをサポートしていないようです。これでユーザーにパスワードを入力させる必要がありますが、エコーは表示しないでください。どのツールを使用できますか?

答え1

#!/bin/bash
stty -echo
IFS= read -p 'Enter password: ' -r password
stty echo
printf '\nPassword entered: %s\n' "$password"
  • stty -echoあなたが話しているディスプレイであるターミナルエコーをオフにしてください。
  • IFS=パスワードにはスペースを入れる必要があります。
  • read -rバックスラッシュの解釈をオフにします。

使用するbashこともできますが、read -sこの機能はシェル全体では標準ではありません。

関連情報