以下是按预期工作。 唯一的问题是它不会返回源服务器命令提示符,除非我按Ctrl + C
[abc@server]$ 0</dev/null echo "ls" | ssh -t -t [email protected] "sh" tcgetattr: Invalid argument sh-3.2$ xyz.tar.gz sh-3.2$ Killed by signal 2. [abc@server]$
我想在shell脚本中使用它。
为什么不:
$ ssh -t -t [email protected] 'ls && exit'
实际的命令是
echo "file.txt" | ssh -t -techo "file.txt" | ssh -t -t…
我想你的意思是cat file.txt ( file.txt包含你想在远程服务器上执行的所有命令),如果是这样的话,只需在这个文件的末尾添加exit可以了:
$ sed '$a exit' file.txt | ssh -t -t [email protected]
$用于表示最后一行 a代表追加