SOFTELメモ

Softel Inc.

【ssh】stty: 標準入力: 無効な引数です

問題

鍵認証を scp や svn+ssh:// などに使っているのですが、以下のようなエラーが発生します。

stty: 標準入力: 無効な引数です
stty: standard input: Invalid argument

答え

CTRL+S(stop), CTRL+Q(start) を無効にするためなど、キー割り当てをカスタマイズするために、以下のような設定を .bashrc に追加していると発生する。

stty stop undef
stty start undef

標準入力を受け付けていないのに stty しようとすると、エラーが発生する。

[ -t 0 ] && stty stop undef
[ -t 0 ] && stty start undef

メモ

[-t 0 ] の意味は、man test で確認できる。

・[] は test
・-t は 引数に指定したファイルディスクリプタが端末でオープンされているかどうかの判定をする
・0(ゼロ) は STDIN 標準入力のこと

標準入力があるかどうか確認できるので、パイプで引数を渡されたのか、標準入力を受け付けているのかで動作を変えるスクリプトを作りたい時などに使える。

関連するメモ

コメント