Linux シェル,エコーバックをオフにして、文字を非表示にする

スポンサーリンク

鍛錬 408

Linux シェルスクリプト,エコーバックをオフにして、文字を端末(ターミナル)に表示させない方法

エコーバックをオフ(OFF)にして、文字を端末(ターミナル)に表示させないようにするには、stty を使用します。
 
使用方法は、以下に示す通りです。

エコーバックをオフにする

stty -echo

 
エコーバックをオンにする

stty echo
スポンサーリンク

シェルスクリプト

以下は、エコーバックをオフにして、端末に文字を入力しても表示させないシェルスクリプト、echo_back.sh です。

#!/bin/sh

echo -n "入力文字列:"

# エコーバックをOFFに設定
stty -echo

# 入力された文字列を格納
read tmp

# エコーバックをONに戻す
stty echo

echo
echo "入力された文字列:$tmp"
スポンサーリンク

実行結果

以下は、エコーバックがオフの状態で文字列 Hello, World. を入力しています。

***@ubuntu:~/***/test/shell$ 
***@ubuntu:~/***/test/shell$ ./echo_back.sh
入力文字列:
入力された文字列:Hello, World.

 
上記に示した通り、端末で文字を入力しても非表示にすることができました。

タイトルとURLをコピーしました