假设在服务器上运行一个进程(PID 1501)。 服务器已经打开Firefox(如1501)..从远程计算机,我想要发送命令到PID 1501(例如1501 – 新标签)。 我将如何通过SSH运行该命令?
TLDR:如何将命令行参数发送到特定的pid?
一般来说,您不能将命令行参数发送到特定的pid。
Firefox有它自己的远程/命令系统设置,它允许你发送像新标签命令的东西到正在运行的实例。 我已经看了一段时间了,但是我相信这取决于让DISPLAYvariables设置为与Firefox运行的variables相匹配。
EG,在服务器上,您可能将DISPLAY设置为:0.0(第一个本地X显示)。 你可以通过运行来检查
echo $ DISPLAY
从服务器本身的 X内部的terminal。 如果这是正确的,那么你应该能够ssh进入服务器作为运行X和Firefox的同一个用户,设置您的DISPLAY为0.0,然后运行firefox -new-tab http:// blah / :
ssh user@server export DISPLAY=:0.0 firefox -new-tab http://blah
然而,当我这样做的时候,它通常以另一种方式工作 – 我在本地机器上运行firefox,我SSH到一个远程系统,无论什么原因运行firefox的新标签,并打开一个新的选项卡火狐运行在我的本地机器上。 没有理由不相反,但有点复杂。
更新我刚刚testing了这个sshing到另一台机器,然后回到我的本地,它肯定按照build议工作。 SSH作为已经运行的Firefox相同的用户名,设置您的DISPLAYvariables正确,然后Firefox的远程命令将工作。