查找系统当前所有存在的进程
这个程序是让他遍历一遍/proc/目录下的所有目录查找status这个文件(里面记录了该进程的一些信息),然后读取第一行(进程名)输出。
问: 1 他怎么一个都没有找到,看看程序有什么问题?
2 那位仁兄还有更好的方法?
#include <ftw.h>
#include <string.h>
#include <stdio.h>
int fn(const char *file, const struct stat *sb, int flag, struct FTW *s)
{
FILE *fp;
char line[128+1];
if( flag == FTW_F )
{
if( strstr(file,"status")!=NULL )
{
fp = fopen (file, "r");
fgets(line, sizeof(line), fp);
fclose(fp);
printf("%s", line);
}
};
return -1;
}
int main( )
{
int result;
nftw("/proc/", fn, 100, FTW_MOUNT);
return 1;
}