web-dev-qa-db-ja.com

zshタブ補完のように、シェルに「一時的に」出力するにはどうすればよいですか?

zshシェルで、Tabキーを2回押してタブ補完を取得すると、オプションがプロンプトの下に表示されます。ただし、選択すると、オプションは表示されなくなります。

キーワード検索に基づいてパスワードをstdoutに出力する小さなスクリプトがあります。唯一の問題は、コピーして貼り付けた後、パスワードがターミナルに残っていることです。この「一時的な」出力をパスワードスクリプトに実装したいと思います。これは可能ですか?

6
Matt Alexander

terminfo を使用するシステムの場合:

printf "The password is %s " "swordfish"
read -r line
tput cuu1; tput el

押す Enter パスワードを消去して終了する、または Ctrl+C すぐに終了します。システムで termcap を使用している場合は、tput up; tput ceを使用します。このコードは、ユーザーが押すまでにカーソルがパスワードのある行にあることを前提としています。 Enter