在Python的SSH会话中将ctrl-C发送到OSX终端

时间:2013-11-23 21:09:43

标签: python macos ssh

This solution要求我在与我尝试终止的进程相同的机器上运行Python。

但是,我在本地运行Python并在Terminal中通过SSH运行该进程。在这种情况下如何发送terminate命令?

1 个答案:

答案 0 :(得分:0)

使用服务器设置pexpect后使用ssh-keygen进行SSH,以便不需要来自您计算机的密码:

import pexpect

ssh_command = 'ssh user@your.server.com'
child = pexpect.spawn(ssh_command)

default_prompt = 'user@server:~/# '
child.expect(default_prompt)

kill_command = 'killall process_name'
child.sendline(kill_command) 

如果您未在ssh-keygen行之前使用default_promptyou will need to work your password login into the pexpect script

只需使用Alfred将此脚本附加到热键(例如ctrl+alt+c)。