man ssh说:
-t强制伪分配.这可以用于在远程计算机上执行基于屏幕的任意程序,这是非常有用的,例如在实现菜单服务时。多个-t选项强制分配tty,即使ssh没有本地tty。
https://explainshell.com/explain?cmd=ssh+-tt
多个-t选项强制分配tty,即使ssh没有本地tty。
这具体是什么意思?如果系统上没有shell,那么ssh是否创建自己的shell?-tt失败一定会发生什么?
发布于 2022-10-25 01:10:12
如果你这样做:
ssh -t user@server<<EOT
echo test
EOT您将得到这样一条消息:在本例中,stdin是在输入ssh,而不是本地Pseudo-terminal will not be allocated because stdin is not a terminal. /tty。
使用-tt将告诉它不管如何分配。这是一个用例,我相信还有其他的用例可以应用,但是stdin是最明显的例子之一。
如果系统上没有shell,那么ssh是否创建自己的shell?
对于ssh来说,没有本地tty并不表示不存在本地shell。上面的示例显示了如何使用stdin流到ssh中。
这具体是什么意思?
这意味着无论本地连接如何,它都将强制分配tty。见上面的例子。
https://serverfault.com/questions/1113915
复制相似问题