【发布时间】:2017-02-15 09:47:27
【问题描述】:
我需要远程运行命令,所以我通过 ssh 启动它。如果我使用 CTRL-C,本地 ssh 客户端和远程命令都会终止。很好。
出于某种原因,我需要将一些数据通过管道传输到远程,所以我的命令如下所示:
ssh user@remote "wc -c; sleep 10000" < test.data
数据被接收和处理。但是如果我现在按下 CTRL-C,只有本地命令(ssh 客户端)被终止。
如何解决这个问题? (要求是:向远程发送数据,使用该数据执行远程命令。整个事情应该可以用CTRL-C完全中断)
如果有帮助:遥控器的 STDIN 可以在“wc”之后关闭。不幸的是,我关闭标准输入的尝试没有成功......
【问题讨论】:
-
你试过
ssh -t或ssh -t -t按照stackoverflow.com/q/331642 吗? -
Siguza:是的,我做到了:'-t' 被忽略(因为管道而发出警告)并且 '-tt' 破坏了管道(数据发送到 stdout,wc 不接收数据)