当前位置:  技术问答>linux和unix

如何在在一个程序中判断另一个程序是否已运行?是哪个命令或函数?

    来源: 互联网  发布时间:2016-03-05

    本文导语:  如何在在一个程序中判断另一个程序是否已运行?是哪个命令或函数? | 可以用调用ps来得到,这是一个土办法,可以试试。 FILE *fp; int count=0; fp = popen("ps -ef|grep foo1|grep -v grep|wc -l|awk '...

如何在在一个程序中判断另一个程序是否已运行?是哪个命令或函数?

|
可以用调用ps来得到,这是一个土办法,可以试试。

FILE *fp;
int count=0;
fp = popen("ps -ef|grep foo1|grep -v grep|wc -l|awk '{print $1}'","r");
if(fp)
{
   count = fscanf("%d",&count);
   fclose(fp);
}

if(count > 0)
   printf("foo1 running...n");
else
   printf("foo1 not running...n");


|
int rs;
rs = system("killall -0 http");
if(rs == 0){
//http is running...
}

|
一个进程判断另外一个进程是否存在,就是看系统中是否存在该进程。一般就是system调用ps -ef查看是否存在该进程,frankxue的办法已经不土了,不使用system调用而使用popen。不过他应该使用pclose而不是fclose关闭。

应该注意在system或popen之前,应当保证SIGCHLD的处理应该是SIG_DFL,也就是默认处理。如果SIG_IGN可能导致system调用返回255,popen失败,如果使用其他钩子,可能导致调用进程在接收到SIGCHLD并进行处理发生其他问题(看钩子程序里面做了什么,只是有这种可能性)

    
 
 

您可能感兴趣的文章:

  • 一个静态库包含多个函数,应用程序连接了库中的某个函数,应用程序目标代码中是否还包含了该静态库中的其他函数代码?
  • 进入程序后的第一个函数main的函数地址是存放在那个寄存器?
  • 为什么执行完execlp函数后程序就退出了,怎样才能让程序继续执行后面的代码
  • 急!请问有分析java程序性能瓶颈的工具吗?例如,统计 java 程序中函数调用次数?
  • shell 函数中的用exit时,什么情况下仅仅退出函数,什么情况下退出整个shell程序?
  • SOS ,在UNIX下编译C++程序时出现链接错误:未下义的符号,但函数库里有这些函数,不知道为什么?
  • C语言应用程序使用的函数来源于libc库, Libc库中的函数是在哪里实现的??
  • 我的程序是用c写的gtk+程序,有个函数的参数要传给它图片的文件名,但是图片和原程序不在同一目录下怎么办?怎么在程序里指定文件的路径
  • 应用程序为普通用户所有,不改变其所有,如何在程序中使用超级用户级别的函数啊
  • GDB调试C++程序时如何使程序在运算符重载函数处停止
  • 在应用程序中如何访问模块导出的函数
  • 函数图形绘制程序 WZGrapher
  • 程序中用何函数或方法才知道所运行的java程序名?
  • 如何导出-g编译出的执行程序的函数信息?
  • C++ 程序中,如何增加c函数?
  • 如何搭建“调用Xlib库里的函数编写X window程序”的环境?
  • gtk编程问题,那个函数可以调用其它的应用程序
  • 请教关于dlopen,动态库连接程序的输出函数
  • 程序需要检测超时,我该用什么函数?
  • 用Applet小程序怎么绘画出sin函数的曲线啊!
  • windows下cmd命令提示符下让程序后台运行命令
  • 我自己写了一个一个程序,文件名叫test。。怎么能够像调用系统命令那样子去调用我这个命令呢。在任何地方输入test就能执行这个程序。
  • 通過仕麼命令可以在運行程序的時候應藏掉命令窗口.
  • 如何在我的C语言编写的程序里面执行命令行命令,比如ls -la ??
  • java怎样实现 运行dos命令行的命令或者windows的程序
  • 请问能否在程序中嵌入命令行(linux)中的命令,如果可以应该怎样做,谢谢!!!
  • 怎么在java程序中执行系统命令或其他可执行程序(像批处理一样)?
  • 命令行界面下有什么拨号程序和irc程序吗?
  • redhat7.3下,java程序打印中文直接用java命令执行正常,用crontab执行java命令为乱码
  • java程序在linux运行,要用Runtime.exec()执行外部命令,可外部命令中关于文件操作的路径都很长,如何使用相对路径.在线等待
  • 求助:我昨天安装了realplayer 9,结果装上了,但是当我用时,他总是说有另一个程序也在用,于是我想卸载,可是当我在命令行敲卸载命令后
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 重装服务器后IIS网站错误(应用程序中的服务器错误)
  • 为什么我在java程序里启动的一个程序在java程序关闭后,该程序的所有进程都关掉了
  • windows server2008上PowerBuilder程序系统错误解决方法
  • Linux 编程怎么样在程序开启一个程序,和关闭一个程序?
  • c语言判断某一年是否为闰年的各种实现程序代码
  • 请问从一个java程序中如何调用另一java程序,并控制可以其状态(最小化、最大化、结束程序),还有怎样知道那个被调用的程序结束。
  • 程序员的八种级别,你属于哪一级?
  • Linux下的程序是在内存中运行的吗?为什么在程序运行的时候可以删除程序文件?
  • Linux下指定运行时加载动态库路径及shell下执行程序默认路径
  • 为什么linux下的C++程序这么少见? 请问那里有linux下的C++程序?什么类型的程序都可以.
  • 在docker容器中通过apt-get安装新的程序
  • 我写了个linux下的网络程序,程序在多个电脑间通信,但是我没有多个电脑,怎么调试这样的程序啊?
  • linux下通过crond实现自动执行程序
  • 在java控制台程序中,可以用System.exit(0);使用一个程序终止,那么在servlet中如何使一个servlet程序终止呢?
  • http协议介绍,文件上传分析及程序举例
  • 程序调用脚本,脚本启动另一个程序,如何让原始程序彻底释放资源?
  • 程序员赚钱致富的6种方法
  • python计算程序开始到程序结束的运行时间和程序运行的CPU时间
  • HASH查找的程序实现及性能分析
  • linux下,一个程序如何向另一个程序发送消息,另一个程序如何接收
  • 程序员为了健康必看!早晨空腹喝水,是对还是错?
  • jsp程序运行一次后,再修改原jsp程序,为什么运行还是的还是原来的程序??


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3