UNIX环境高级编程(第二版) 读书代码(1-5)
2006-10-03 21:35
323 查看
/*
* DESCRIPTION: process control that simulate a simple shell;
* three function : fork(), exec(), waitpid();
* author:liy
* DATE:8-23-2006
*/
#include "apue.h"
#include <sys/wait.h>
int main(void)
{
char buf[MAXLINE]; /* MAXLINE from apue.h */
pid_t pid;
int status;
puts("###########A simple shell##########");
printf("%%"); /* simulate a dos prompt */
while(fgets(buf, MAXLINE, stdin) != NULL){
if(buf[strlen(buf) - 1] == '/n'){
buf[strlen(buf) - 1] = 0; /* replace new line null */
}
if((pid = fork()) < 0){
err_sys("fork error");
}
else if(pid == 0){ /* child */
execlp(buf, buf, (char *)0);
err_ret("Could'n execute %s", buf);
exit(127);
}
/* parent */
if((pid = waitpid(pid, &status, 0)) < 0){
err_sys("watipid error");
}
printf("%%");
}
puts("bye ^_^");
exit(0);
}
* DESCRIPTION: process control that simulate a simple shell;
* three function : fork(), exec(), waitpid();
* author:liy
* DATE:8-23-2006
*/
#include "apue.h"
#include <sys/wait.h>
int main(void)
{
char buf[MAXLINE]; /* MAXLINE from apue.h */
pid_t pid;
int status;
puts("###########A simple shell##########");
printf("%%"); /* simulate a dos prompt */
while(fgets(buf, MAXLINE, stdin) != NULL){
if(buf[strlen(buf) - 1] == '/n'){
buf[strlen(buf) - 1] = 0; /* replace new line null */
}
if((pid = fork()) < 0){
err_sys("fork error");
}
else if(pid == 0){ /* child */
execlp(buf, buf, (char *)0);
err_ret("Could'n execute %s", buf);
exit(127);
}
/* parent */
if((pid = waitpid(pid, &status, 0)) < 0){
err_sys("watipid error");
}
printf("%%");
}
puts("bye ^_^");
exit(0);
}
相关文章推荐
- linux下unix环境高级编程代码配置步骤及编译方法
- Unix环境高级编程(第二版)学习笔记
- unix 环境高级编程(去头文件ourhdr.h后代码)
- unix环境高级编程 APUE.H最简单编译方法(第二版) Linux和Ubuntu
- Unix环境高级编程第三版中实例代码如何在自己的linux上运行的问题
- 《UNIX 网络编程 第二版》编译环境的搭建( 运行本专栏代码必读 )
- 关于UNIX环境高级编程第二版编译问题
- unix环境高级编程代码编译方法
- <转>unix环境高级编程中代码运行问题解决
- unix环境高级编程中代码运行问题
- unix环境高级编程编译方法 -apue最简单编译方法(第二版)
- UNIX环境高级编程第二版第一个程序运行成功
- 在Linux环境下面搭建 UNIX 环境高级编程(第三版) 的代码编译环境
- unix环境高级编程编译方法 -apue最简单编译方法(第二版)
- [UNIX环境高级编程第二版]读书笔记6章
- unix环境高级编程编译方法 -apue最简单编译方法(第二版)
- [UNIX环境高级编程第二版]读书笔记7章
- unix环境高级编程编译方法 -apue最简单编译方法(第二版)
- UNIX环境高级编程(第二版)/ APUE 源码编译与使用
- [UNIX环境高级编程第二版]读书笔记8章[TBD]