管道实现ps -aux | grep a.out
程序员文章站
2024-03-26 12:41:41
...
/*************************************************************************
* File Name: ps_aux.c
* Author: lixiaogang
* Mail: 2412799512@qq.com
* Created Time: 2017年06月08日 星期四 21时13分08秒
************************************************************************/
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<sys/types.h>
#include<fcntl.h>
#include<unistd.h>
void sys_err(const char *str,int num)
{
perror(str);
exit(num);
}
int main(int argc,char *argv[])
{
int fd[2];
pid_t pid;
if(pipe(fd) != 0){
sys_err("pipe",-1);
}
pid = fork();
if(pid < 0){
sys_err("fork",-1);
}else if(pid == 0){
//ps -aux | grep a.out
close(fd[0]);
dup2(fd[1],STDOUT_FILENO);
close(fd[1]);
execlp("ps","ps","aux",NULL);
return -3;
}
pid = fork();
if(pid < 0){
sys_err("fork",-1);
} else if(pid == 0){
close(fd[1]);
dup2(fd[0],STDIN_FILENO);
close(fd[0]);
execlp("grep","grep","a.out",NULL);
}
wait(NULL);
wait(NULL);
close(fd[0]);
close(fd[1]);
return 0;
}
推荐阅读
-
管道实现ps -aux | grep a.out
-
别把&和nohup混为一谈 ------ ./a.out & , nohut ./a.out , nohup ./a.out &的区别
-
hashmap的简单实现 博客分类: Java javathinkinginjavahashmap
-
./a.out 2 2>>temp.foo
-
gcc生成的unix可执行文件与默认生成的a.out区别
-
【跟我一起学gdb】(4) break-if 以及脚本的第二种使用方法#gdb ./a.out -x gdbcmd.txt
-
size nm 命令解析a.out
-
用linux下的daemon函数来玩守护进程------类似于nohup ./a.out &
-
索尼宣布全球范围内售出2100万部PS3
-
android开发中WebView控件的实例与注意要点——个人主页浏览器简易实现 博客分类: android开发 WebView浏览器网页android