接続が遅い場合は、仮想端末(orなど)を割り当てずにSSHを使用してリモートシステムに接続します。シェルは使用できますが、シェルにプロンプトは表示されません。たとえば、疑似端末なしでSSH経由で接続するときにシェルにプロンプトを表示する方法はありますか?ssh -T [email protected]
ssh [email protected] bash
$
リモートシステムで以下のbashスクリプトを実行できますが、プロンプトを表示するために使用できる組み込みのものがあるかどうか疑問に思います。
#!/bin/bash
# or #!/bin/sh
PS='$ '
prompt() {
printf '%s' "$PS"
read -r line
# Exit if EOF (Ctrl-d).
[ "$?" -ne 0 ] && echo && exit
eval "$line"
}
# Handle Ctrl-c.
trap 'echo && prompt' INT
while :
do
prompt
done
(次から適応:https://tldp.org/LDP/abs/html/intandnonint.html)
このスクリプトの欠点は、複数行の入力を処理できないことです。
答え1
明らかにttyの欠落によって引き起こされるすべての問題を解決することはできませんが、次のようにすることができます。
ssh -T [email protected] bash -i