网上找了一段代码,有点问题。于是修改了,发出来。


/**进程名可以不等于执行文件名。这时要传递另外一个参数。
不考虑进程名是pts这种故意捣乱的情况。
通过ps,检查输出结果是否是进程名。参考字串如下:9548 pts/19   00:00:25 gh_main*/
int   process_check_state(const char* psProcessName)
{int state = -1;FILE *fstream=NULL;    char buff[1024] = {0};//用空格,是去掉类似dah_main的噪声sprintf(buff, "ps -A | grep \" %s\"", psProcessName); if (NULL==(fstream=popen(buff, "r"))){return -1;}while (NULL != fgets(buff, sizeof(buff), fstream)){if (strlen(buff) <= 0){break;}char* psHead = strstr(buff, psProcessName);if (psHead == NULL){continue;}int pos = strlen(psHead)-1;if (psHead[pos] == '\n'){psHead[pos] = 0;}//GH_LOG_INFO("|||%s|||", psHead);if (!strcmp(psHead, psProcessName)){state = 0;break;}}pclose(fstream);return state;
}

LINUX下用C判断一个进程是否活着相关推荐

  1. linux 数据包复制,请问在LINUX下是如何判断数据包属于同一条连接的--

    请问在LINUX下是如何判断数据包属于同一条连接的-- (2011-09-01 06:29:40) 标签: 杂谈 请问在LINUX下是如何判断数据包属于同一条连接的??比如我在某个数据包中发现了可疑的 ...

  2. Linux 下使用 killall 命令终止进程

    Linux 下使用 killall 命令终止进程 Linux 的命令行提供很多命令来杀死进程.比如,你可以向  kill  命传递一个PID来杀死进程: pkill  命令使用一个正则表达式作为输入, ...

  3. Linux下静态编译的一个TIP

    Linux下静态编译的一个TIP | 素包子 Linux下静态编译的一个TIP 2010年3月28日 baoz 阅读评论 linux下静态编译好处很多,一来是可以跨发行版(debian redhat ...

  4. linux下Qt编写串口调试助手,如何在linux下用QT写一个简单的串口调试助手

    如何在linux下用QT写一个简单的串口调试助手 QT5串口类 在QT5以前,编写串口一般使用的是qextserialport类,但在QT5之后有了QT自带的串口类SerialPort(串口基础类)和 ...

  5. shell:判断一个进程是否存在

    shell:判断一个进程是否存在 - dato0123 - ITeye技术网站 shell:判断一个进程是否存在 Javascript代码 #test.sh #!/bin/sh pid=`ps -ef ...

  6. Linux下的LWP(轻量级进程)、进程 、 线程、用户级线程、内核线程

    一.定义 再看正文之前我要先强调一下几点: 1. Linux中没有真正的线程,但windows中确实有线程 2. Linux中没有的线程是由进程来模拟实现的(又称作:轻量级进程) 3. 所以在Linu ...

  7. linux cron 进程查询,Linux下通过配置Crontab实现进程守护

    我们在实际运维过程中,经常会出现某一个程序(如tomcat,perl等)的进程无缘无故就在服务器上消失了,这样的话第一我们需要投入精力去分析它为什么会消失,第二还需要配置相关检查人员,比较耗费时间. ...

  8. c语言进程waitpid,Linux下C语言开发(进程控制编程——wait()、waitpid())

    wait()和wait()函数说明 wait()函数用于使父进程(也就是调用wait()的进程)阻塞,直到一个子进程结束或该进程接收到一个指定的信号为止.如果该父进程没有子进程或它的子进程已经结束,则 ...

  9. Linux下的UDEV机制 / 守护进程

    一.Udev概念引入 udev是一个设备管理工具,udev以守护进程的形式运行,通过 侦听内核发出来的uevent来管 理 /dev目录下的设备文件. udev在 用户空间运行,而 不在内核空间 运行 ...

  10. ASP.NET Core Linux下为 dotnet 创建守护进程(必备知识)

    前言 在上篇文章中<ASP.NET Core Docker部署>中介绍了如何在 Docker 容器中部署我们的 asp.net core 应用程序,本篇主要是怎么样为我们在 Linux 或 ...

最新文章

  1. Python中如何拷贝一个对象?(赋值、深拷贝、浅拷贝的区别)
  2. ES5和6的一些新特性
  3. python 把带小数的浮点型字符串转换为整数的解决方案
  4. 015_请求转发和重定向
  5. Fluid 进入 CNCF Sandbox,加速大数据和 AI 应用拥抱云原生
  6. 一组动图看懂3D打印原理
  7. Java继承注意事项难点理解
  8. btrfs 入门使用
  9. js清空本地存储_前端存储除了 localStorage 还有啥
  10. 关于写作,别那么在意别人的看法,开始干吧
  11. python实现c语言编译器安卓版_c语言编译器ide下载app-c语言编译器ide软件下载v1.5.1 安卓版-2265安卓网...
  12. Python+PyCharm+PyTorch+Cuda/GPU 安装步骤
  13. 下载 Visual Studio 2010 (SP1) Service Pack 1
  14. 一键生成轮播图,轮播图插件
  15. python 读取TXT 文档进行词频统计
  16. java 类型转换 效率_盘点16个有用的Java工具类,显著提升工作效率!
  17. UG NX 12 对象的选择操作
  18. 剖析冲击式破碎机破碎矿石和解离纤维
  19. 基于Krpano 的全景漫游系统的实现
  20. 新概念英语第二册课文电子版_如何正确使用《新概念英语》(New Concept English)提高英语水平?...

热门文章

  1. lede lcd4Linux,HLK7688A开发板,刷官方LEDE的LINKIT固件可以开机,但同样的uboot下,烧写原版代码自己编译的固件就会panic,无法识别文...
  2. network 公网IP与私网IP的区别
  3. wait,notify,notifyAll用法解析
  4. C++中strftime()的详细说明
  5. 网页小工具(学习中国象棋)
  6. java之模块学习-接口回调机制详解
  7. 微服务架构实战篇(二):Spring boot2.0 + Swagger2 让你的API可视化
  8. Layui中的table中toolbar自定义过程
  9. linux中 」 、」」 的用法
  10. linux运行tomcat常见问题,linux – tomcat运行,但是8080端口没有响应