首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >sh kill非法编号: Kill并行进程

sh kill非法编号: Kill并行进程
EN

Stack Overflow用户
提问于 2015-04-27 08:06:02
回答 1查看 1.3K关注 0票数 0

我正在尝试使用在C++程序上打开多个并行进程。它们四个必须并行运行。但是当我的C++程序关闭时,我想杀死每个进程。这是我的尝试:

代码语言:javascript
复制
system("python okcsend.py & PID1=$! python okccnysend.py & PID2=$! python okc.py & PID3=$! python okccny.py & PID4=$!");

当我试图杀死他们的时候,我是这样做的:

代码语言:javascript
复制
system("kill PID1; kill PID2; kill PID3; kill PID4");

然而,我得到的是:

代码语言:javascript
复制
sh: 1: kill: Illegal number: PID1
sh: 1: kill: Illegal number: PID2
sh: 1: kill: Illegal number: PID3
sh: 1: kill: Illegal number: PID4

这样做的正确方法是什么?

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2015-04-27 08:12:07

您需要分别从每个进程中获取PID。

伪代码:

代码语言:javascript
复制
pid1 = system("python okcsend.py & echo $!)
pid2 = system("python okcsend.py & echo $!)
pid3 = system("python okcsend.py & echo $!)
pid4 = system("python okcsend.py & echo $!)

然后你可以这样做:

代码语言:javascript
复制
system("kill " + pid1 + "; kill " + pid2 + "; kill " + pid3 + "; kill " + pid4 + ";");
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29885167

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档