通过SSH获取PID值,在退出之前不起作用

时间:2014-06-30 11:57:16

标签: linux bash ssh pid

我想在远程服务器上以聆听模式启动mbuffer,所以

ssh -f root@10.10.10.46 'mbuffer -4 -v 0 -q -I 8023 > /tmp/mtest & echo $!'

并输出PID号码,我想将其保存在$pidValue中,但如果我这样做

pidValue=$(ssh -f 10....)

然后它不会退出,直到mbuffer进程退出。

问题

如何从mbuffer进程获取PID值?

1 个答案:

答案 0 :(得分:1)

在运行使用远程PID的进程之前,将远程文件scp到本地存储,然后根据需要处理它。

似乎这个结构:

read -r var < <(ssh remote "echo test; sleep 5") ; echo $var

可以更早地为您提供结果,但这可能取决于您启动的远程流程。试试吧。