如何发送“Ctrl”Break通过 pid 或 handler 到子进程

发布于 2024-12-01 16:50:22 字数 410 浏览 0 评论 0原文

import subprocess

proc = subprocess.Popen(['c:\windows\system32\ping.exe','127.0.0.1', '-t'],stdout=subprocess.PIPE) 
while True: 
  line = proc.stdout.readline() 
  print "ping result:", line.rstrip() 
  #sendkey("Ctrl+Break", proc)            # i need this here, this is not for terminate the process but to print a statistics result for the ping result.

如果有人知道怎么做,请分享给我,谢谢!

import subprocess

proc = subprocess.Popen(['c:\windows\system32\ping.exe','127.0.0.1', '-t'],stdout=subprocess.PIPE) 
while True: 
  line = proc.stdout.readline() 
  print "ping result:", line.rstrip() 
  #sendkey("Ctrl+Break", proc)            # i need this here, this is not for terminate the process but to print a statistics result for the ping result.

If someone know how to do it, please share with me, thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

时间你老了 2024-12-08 16:50:22

视窗?试试这个:

import signal
proc.send_signal(signal.SIGBREAK)

如果你的意思是信号中断(kill -2

import signal
proc.send_signal(signal.SIGINT)

Windows? Try this:

import signal
proc.send_signal(signal.SIGBREAK)

If you meant a signal interrupt (kill -2)

import signal
proc.send_signal(signal.SIGINT)
像极了他 2024-12-08 16:50:22

Ctrl+Break 键是 SIGBREAK 信号。

在Linux下,您可以使用kill命令发送此信号,在Windows上,这略有不同。您可以使用 SendSignal 工具。

The Ctrl+Break keys is a SIGBREAK signal.

Under linux, you can send this signal with kill command, on Windows, this is slightly different. You can use the SendSignal tool.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文