将当前系统中的进程信息打印到文件中
Posted chongjz
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将当前系统中的进程信息打印到文件中相关的知识,希望对你有一定的参考价值。
将当前系统中的进程信息打印到文件中
思路:
1、open()打开文件,没有就新建;
2、dup2()将标准输出STDOUT_FILENO重定向到文件ps.out中;
3、execlp()系统调用ps aux命令程序载入进程。
1 #include<unistd.h>
2 #include<fcntl.h>
3 #include<stdio.h>
4 #include<stdlib.h>
5
6 int main(void)
7 {
8 int fd;
9 fd = open("ps.out", O_WRONLY|O_CREAT|O_TRUNC, 0644);
10 if(fd<0){
11 perro("open ps.out error");
12 exit(1);
13 }
14
15 dup2(fd, STDOUT_FILENO);
16
17 execlp("ps", "ps", "aux", NULL);
18
19 close(fd); //事实上execlp()不返回,故后面的语句都不会执行,文件还是依靠系统隐式回收
20 return 0;
21 }
Ubuntu16.04
以上是关于将当前系统中的进程信息打印到文件中的主要内容,如果未能解决你的问题,请参考以下文章
VSCODE 查找在文件夹或者文件中代码或定义,在文件夹中查找文件的多种方法
VSCODE 查找在文件夹或者文件中代码或定义,在文件夹中查找文件的多种方法