下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、本文格式为Word版,下载可任意编辑unix实验报告7 试验 七 管道 e pipe 和 和 n popen 通信 试验目的 1. 把握无名管道 pipe 的原理 2. 把握管道的应用及重定向。 3. 熟识 popen 创建管道的方式及应用程序设计; 试验内容 1. (1) 在命令行下执行 ls l |grep .c 命令,查看运行结果。 (2)设计一个程序,要求创建一个管道 PIPE,复制进程,父进程运行命令"ls -l',把运行结果写入管道,子进程从管道中读取"ls -l'的结果,把读出的作为输入运行"grep .c'。即实现"
2、; ls l |grep .c'功能。参考课件 ch4 P52,54。 程序源代码: #include stdio.h #includesignal.h #includeunistd.h #includestdlib.h int main () int fd2; char buf1000; pid_t p; if(pipe(fd)0) printf(创建管道失败); return -1; p=fork(); if(p0) perror(创建子进程失败); exit; else if (p=0) close(0); dup(fd0); execlp(grep,grep,.c,NULL);
3、 else close(1); dup(fd1); execlp(ls,ls,-l,NULL); wait(0); return 0; 结果截图: 2. (1)在命令行下执行 $touch file.txt $ls l file.txt, cat 命令查看 file.txt 内容。 (2)设计一个程序,要求利用 popen 函数,实现"ls l file.txt'的重定向功能,file.txt 在程序中创建。参考课件 ch4 59 程序源代码: #include stdio.h #includesignal.h #includeunistd.h #includestdlib.h int main () FILE *fp; int num; char buf500; memset(buf,0,sizeof(buf); printf(建立管道n); fp=popen(ls -l,r); if(fp!=NULL) num=fread(buf,sizeof(char),500,fp); if(num0) printf(%sn,buf); pclose(fp); else printf(用 popen 创建管道错误n); return 1; fp=fopen(a.txt,w+); fwrite(buf,si
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 初二下学期学生学习计划
- 大学生物流专业实习计划范本
- 大学生学习实施计划-
- 六年级备课组工作计划
- 2024年小学春季学校工作计划
- 业务员季度工作计划表
- 服务中心个人2024年度工作计划
- 幼儿园中班下学期安全工作计划范文
- 经济发展办公室的工作计划
- 采购员个人工作计划的范文
- 《林黛玉进贾府》原文
- 刑法学(上册)马工程课件 第4章 犯罪概念与犯罪构成
- 羽毛球训练计划以及周计划
- 五年级上册数学说课课件8.1分数四则混合运算∣青岛版五年制 (共24张PPT)
- 电磁场与电磁波课后习题答案全-杨儒贵
- 逻辑学导论 超星尔雅 视频答案及课后答案
- 转子动平衡教程课件
- 经颈静脉肝内门体分流术(TIPS)课件
- 肿瘤诊断学及肿瘤检验标志物
- 消化系统的结构与功能最全课件
- 剑桥商务英语BEC(初级)全套课件
评论
0/150
提交评论