导航:首页 > 编程系统 > linuxc判断进程是否存在

linuxc判断进程是否存在

发布时间:2021-03-04 05:44:43

⑴ 大神,C语言判断进程是否存在用哪个函数

这是系统API的问题
不是c语言
在Win32系统下
查看运行的进程
用 Process32First, Process32Next 遍历进程就好了

⑵ C语言有什么函数可以判断某进程是否存在

C语言没有库函数可以做到这一点。但是在linux下,有一些替代方案。

见下:

基本思路是先定义一个FILE指针,用该指针接收popen()执行ps指令的返回值,再从指针中读取数据到缓存,根据得到的数据判断进程是否存在,怎么操作要看ps的参数了。

#include<unistd.h>
#include<sys/types.h>
#include<sys/wait.h>
#include<stdio.h>
#include<stdlib.h>
#include<fcntl.h>
#include<limits.h>

#defineBUFSZPIPE_BUF

voiderr_quit(char*msg)
{
perror(msg);
exit(EXIT_FAILURE);
}

intmain(intargc,char*argv[])
{
FILE*fp;
intcount;
charbuf[BUFSZ];
charcommand[150];
if(argc!=2)
{
printf("USAGE:example<processname> ");
exit(EXIT_SUCCESS);
}
else
sprintf(command,"ps-C%s|wc-l",argv[1]);

if((fp=popen(command,"r"))==NULL)
err_quit("popen");

if((fgets(buf,BUFSZ,fp))!=NULL)
{
count=atoi(buf);
if((count-1)==0)
printf("%snotfound ",argv[1]);
else
printf("process:%stotalis%d ",argv[1],(count-1));
}
pclose(fp);
exit(EXIT_SUCCESS);
}

⑶ linux代码中如何判断指定进程是否存在

要对系统中进程进行监测控制,用 ps 命令满足你。
/bin/ps
ps 是显示瞬间行程的状态,并不版动态连续;如果想权对进程运行时间监控,应该用 top 工具

ps aux | grep (指定进程或服务)
ps aux | grep 456789
ps axu | grep mysql

⑷ 用C写一个 每隔1分钟判断一下XX进程是否存在 linux上的。 麻烦那位高手能贴出完整代码。&#

#include#includeintmain(){intpid;pid=fork();if(pid0){wait(NULL);}else{execlp("/bin/ls","/bin/ls","-l",NULL);}return0;}

⑸ linux 编写程序查看某个进程是否存在,不能用shell脚本

可以用管道啊什么的,如果a.out是你写的,在a.out里新建个管道,当它启动时,发个消息专,让属b.out接收这个管道的消息,接收到了就说明a启动了。如果a.out不是你写的,那我就不会了,哈,希望帮到你。刚接触LINUX

⑹ linux c 判断某进程是否运行

方法1:可以用采取系统调用system("ps -aux>1.txt")将当前进程重定向的1.txt中;
再通过对1.txt进行解析,分析出回你要求的进程名或答ID是否存在;
方法2:研究ps源码,将其集成到你的程序中去。

⑺ linux查看指定进程是否存在的脚本

你好!

linux查看进程命令是:ps;

详细的用法,可以在命令行输入 man ps,进行了解!
比如你要查看为200的进程如下:
ps -ef |grep 200

⑻ 用C语言,根据进程名判断该进程是否存在

用popen函数
然后用fgets函数读数据
检查输出结果
popen("ps -ef|grep proc_name|grep -v grep" ,"r" );

⑼ linux shell 判断进程是否存在

|如果你是通过一个进程的名字作为关键词来查找进程是否存在的话,可使用回
ps -ef | grep "<关键词>" | wc -l
输出为0表示不答存在,输出大于0,表示存在,且数字就是这个关键词进程的个数;

如果你是通过进程号PID来查找进程是否存在,可以使用
ps --no-heading <PID> | wc -l
同样,
输出为0表示不存在,输出=1,表示存在,因为进程号不可能重复,所以输出肯定非0即1

阅读全文

与linuxc判断进程是否存在相关的资料

热点内容
奇迹13单机系统找不到指定文件 浏览:719
flyme魅蓝3以前的版本 浏览:318
安卓文件管理哪些文件夹可以删除 浏览:290
安卓车载导航没有声音是怎么回事 浏览:810
cjson数组格式 浏览:159
vb文件在哪里 浏览:215
工厂里都招什么编程人员 浏览:932
jspsql登录 浏览:981
网络用语粉丝阅读什么意思 浏览:333
红头文件怎么打印 浏览:94
热血江湖130刺客升级 浏览:106
jsp页面放大镜技术介绍 浏览:101
网络编程udp 浏览:148
加密压缩文件如何打开 浏览:56
微软编程软件有哪些 浏览:736
linux目录中创建文件夹权限设置密码 浏览:759
word文档正式文件模版 浏览:247
linux文件系统的类型是 浏览:111
苹果的无线传输文件找不到了 浏览:102
密件文件名能出现在通知吗 浏览:832

友情链接