1-5 从标准输入读入命令并执行
2010-07-20 12:23
288 查看
#include"apue.h" #include"apueerror.h" #include<sys/wait.h> int main(void) { char buf[MAXLINE]; //from apue.h pid_t pid; int status; printf("%% "); /*print promt (printf requires %% to print %)*/ while(fgets(buf,MAXLINE,stdin)!=NULL){ if(buf[strlen(buf)-1]=='/n') buf[strlen(buf)-1]=0; /*replace newline with null*/ if((pid=fork())<0){ err_sys("fork error"); }else if(pid==0){ /*child*/ execlp(buf,buf,(char *)0); err_ret("couldn't execute : %s",buf); exit(127); } /*parent*/ if((pid=waitpid(pid,&status,0))<0) err_sys("waitpid error"); printf("%%"); } exit(0); }
标准库函数fgets():
char * fgets(char *s ,int size,FILE *stream)
(1)从标准文件流中,读入最多size-1 个字符,然后存入s指向的buffer之中。
(2)当遇到EOF 或 换行符 时 读取结束 . 返回空指针。
(3) 当每行读取结束之后,就存到buffer之中,然后会给buffer的最后一个字符后面存入/0 .
相关文章推荐
- 从标准输入读入命令并执行【UNIX 环境高 3ff0 级编程】
- 1.8 从标准输入读命令并执行2
- 从标准输入中读命令并执行
- 1.5 从标准输入读取命令并执行
- APUE 1-7 从标准输入读命令并执行
- UNIX环境高级编程 chat1 从标准输入中读取命令执行
- 笔记1-3: 从标准输入读取命令并执行
- 笔记1-3: 从标准输入读取命令并执行
- UNIX环境高级编程1-5从标准输入读命令并执行
- 从标准输入读命令并执行
- 0901假设存在一个可以从标准输入读入字母并且将其从小写转换为大写输出的可执行程序upcase
- 1.5 从标准输入读命令并执行
- linux:从标准输入读取命令并执行
- APUE 1-10 从标准输入读命令并执行
- 软件调试笔记62 - WinDBG用法详解 :输入和执行命令
- 如何使得执行scp命令时不需要输入用户密码
- 标准输入与输出(Shell命令)
- Linux下统计文件行数 语法:wc [选项] 文件… 说明:该命令统计给定文件中的字节数、字数、行数。如果没有给出文件名,则从标准输入读取。wc同时也给出所有 指定文件的总统计数。字是由空格字符
- Unix学习笔记------书本例题编程实例------从标注输入读入然后从标准输出输出
- linux下命令执行结果作为其他命令输入参数