sshで強制的に端末を割り当てる

スクリプトでsshを使って、標準入力からコマンドを与えようとすると以下のエラーがでる場合がある。
Pseudo-terminal will not be allocated because stdin is not a terminal.
このような場合、ssh -t -t ...-tを2つ指定すると解決する。あるいは-ttとしてもよい。

なお、入力側が端末をもっている場合(端末で手動で入力するような状況)は、-tを1つ指定するだけでよい。

参考: teminal(端末)やstdin(標準入力)とは

下記に端末とそれに深く関連する標準入出力について解説しています。

0 件のコメント: