加入收藏
|
设为首页
|
会员中心
|
RSS
首页
开源资讯
Linux技术
硬件产品
编程开发
下载中心
网上商城
人才中心
开源论坛
BLOG
登陆
|
注册
|
修改资料
|
短信息
|
设置空间
|
管理信息
|
收藏夹
|
我的状态
|
消费记录
|
充值卡充值
|
我的购物车
|
我的订单
|
退出
|
|
绿色计算
|
新手入门
|
系统管理
|
网络管理
|
桌面应用
|
编程开发
|
网络安全
|
高性能集群
|
Linux嵌入式
|
|
技术文章
|
SUN 系列
|
IBM 系列
|
HP 系列
|
曙光 系列
|
浪潮 系列
|
方正 系列
|
戴尔 系列
|
|
数据库
|
PHP
|
JSP
|
HTML
|
CSS
|
javascript
|
JAVA
|
|
系统软件
|
网络工具
|
安全相关
|
媒体工具
|
OURLPI群专区
|
|
5Th Rack
|
CentOS
|
应用软件
|
|
|
您当前的位置:
首页
>
Linux技术
>
编程开发
linux 命令解释程序的实现(shell)
时间:2008-06-30 17:34:31 来源: 作者:
Linux 命令解释程序的实现(shell)
操作系统的实验,实现简单的命令解析和系统调用。
实验内容:
(1)parse应提供一个命令提示符,如parse>,表示接收用户的输入,每次执行完成后再打印下一个命令提示符parse>。当用户没有输入时,parse需要一直处于随时等待输入状态,同时再屏幕上显示一些必要的信息。
(2)如果用户提交了一个内部命令,parse应当按照下面的描述执行相应动作。
 quit:结束所有的子进程并退出parse.
 disp: 显示命令行后的所有字符。
 list:列出当前目录下的所有文件。
 changedir:改变当前目录到所输入目录。
(3)分析用户输入
1)分析用户输入的语法分析器应具有下面介绍的功能,它能够检查用户的输入错误。如用户输入的某些地方出错了,parse应提供合理的出错信息。
2)就像shell一样,parse每次接受用户输入的一行命令,在用户按下回车键(Enter)后开始执行分析动作。
#include
#include
char compare(char *);
void input(char arg[][20],int *);
int main() {
char arg[5][20];
int i,argc,exit;
exit=0;
while(exit==0) {
input(arg,&argc);
printf("the command is %sn",arg[0]);
switch(compare(arg[0])) {
case 'q':{//quit
exit=1;
break;
}
case 'd':{//disp
for(i=1;i");
fgets(cmd,sizeof(cmd),stdin);
for(i=0;*cmd_e!=' '&&i
来顶一下
返回首页
发表评论
共有
条评论
用户名:
密码:
验证码:
匿名发表
推荐资讯
相关文章
无相关信息
栏目更新
栏目热门
站内搜索:
新闻
下载
图库
FLASH
电影
商品
文章
分类信息
高级搜索
网站首页
|
关于我们
|
服务条款
|
广告服务
|
联系我们
|
网站大全
|
免责声明
|
返回顶部
Copyright © 2007-2008 LinuxExpress, All rights reserved.
Powered by 开源快讯
京ICP备06029167号