您现在的位置: 捷凌网安 >> 编程语言 >> Linux编程 >> SHELL编程 >> 正文
实验:Shell实践与设计

作者:佚名 责任编辑:左决 点击数: 更新时间:2008-2-21 7:13:03

 1. 实验目

  的理解shell程序的功能。

  学会shell的使用。

  建造一个简单的shell。

  2. 实验内容

  基本任务:编写一个简单的shell程序,实现以下基本的命令。

  1) 浏览目录和文件的各种属性 ls -l?

  2) 回显 echo、

  3) 显示文件内容 cat、more、

  4) 创建目录mkdir、

  5) 删除目录rmdir、

  6) 删除文件rm、

  7) 改变目录cd 、

  8) 改变文件和目录的权限chmod、

  9) 显示当前目录 pwd、

  10) 文字统计 wc、

  11) 查看时间命令 date 、time、

  12) 退出命令exIT

  13) 帮助命令 help、

  14) 发送信号命令 kill、

  15) 查看在线用户 who、

  16) 查看命令历史记录 history、

  17) 查看系统的信息 systeminfo

  18) 执行用户的程序

  选做任务

  提供友好的人机界面;
  Advanced shell功能,例如:
  1) 输入输出重定向,例如 ./a.out > output.dat
  2) 支持多管道命令,例如 ./a.out -a | ./b.out | ./c.out
  3) 支持后台运行命令,例如 ls | wc &
  4) 其他:参考GNU bash提供的功能。

  参考程序:

  课本的示例Program 1.5 和 Program 8.8
  GNU bash. 源代码见bash-2.05b.tar.gz,文档见bash-doc-2.05b.tar.gz。

  3. 实验要求

  独立完成实验内容
  良好的编程风格

  注意事项
  禁止使用system函数直接调用系统shell提供的命令。

  对于执行指定的程序,使用fork函数生成一个新进程执行。

  必须有exIT命令:用来退出shell。

  必须有help命令:列出shell所拥有的所有命令。

  当前目录下放一个hello程序(功能:打印"hello world")。

  实验提交

  1) 程序源代码、可执行文件、makefile和readme都放在目录 /home/apue/apue×××/lab2/下,×××表示用户的编号。请严格按照上述目录位置存放,否则后果自负。

  2) 程序命名:  mysh , 提交前请编译好且可执行。

  3) readme文件为实验报告:说明程序设计文档、用户手册。

  4. 评分标准

  A——选做内容/必做内容功能完善,编程风格好,人机接口界面好;
  B——必做内容功能完善,完成部分选做内容,编程风格好,人机接口界面良好;
  C——完成必做内容,编程风格良好;
  D——能完成必做内容;
  E——未按时完成必做内容,或者抄袭(雷同者全部为E).

  • 上一篇文章:

  • 下一篇文章:
  •  
    最进更新
    普通文章VC++设计超强仿QQ自动伸缩窗04-17
    推荐文章基于HOOK和MMF的Win密码渗透04-17
    推荐文章几种VC++数据库开发技术的相04-17
    普通文章多线程、Socket技术及委托技04-11
    推荐文章VB.Net连接各种数据库的几种04-11
    普通文章VB.NET中的多窗体编程:升级04-11
    普通文章用VB.NET定制Windows控件04-11
    普通文章VB.NET中监视文件夹的变化04-11
    普通文章VB.NET中对象的克隆04-11
    推荐文章VB.NET中的TextBox控件详解04-11
     
    推荐文章
    推荐文章基于HOOK和MMF的Win密码渗透04-17
    推荐文章几种VC++数据库开发技术的相04-17
    推荐文章VB.Net连接各种数据库的几种04-11
    推荐文章VB.NET中的TextBox控件详解04-11
    推荐文章在VB.NET中进行抓屏04-11
    推荐文章VB.Net开发的长内容自动分页04-11
    推荐文章VB.NET中快速访问注册表技巧04-11
    推荐文章PHP5手动最简安装方法03-07
    推荐文章完全讲解PHP+MySQL的分页显示03-07
    推荐文章Linux Shell元字符知识笔记02-21
     
    热点文章 
    普通文章VC++设计超强仿QQ自动伸缩窗04-17
    推荐文章基于HOOK和MMF的Win密码渗透04-17
    推荐文章几种VC++数据库开发技术的相04-17
    普通文章VB.NET中的多窗体编程:升级04-11
    普通文章用VB.NET定制Windows控件04-11
    普通文章VB.NET中对象的克隆04-11
    推荐文章VB.NET中的TextBox控件详解04-11
    普通文章VB/VB.NET/C#导出到Excel的方04-11
    普通文章如何通过VB.NET获取网卡地址04-11
    普通文章VB.NET中使用ListView控件的04-11

    | 设为首页 | 加入收藏 | 联系站长 | 广告服务 | 友情链接 | 版权申明 | 网站地图 |

    在线交流 捷凌网安主群:51649627
    Copyright 2007-2008 © 捷凌网安. All rights reserved.
    备案序号:蜀ICP备08001812号