- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《LINUX操作系统实验指导书SHELL程序设计
一、实验目的
通过上机实习,能够编写简单的Shell脚本,对操作系统进行基本的系统维护和管理。
二、实验内容
1、在UBUNTU下,利用VI编辑器编写一个SHELL脚本程序。
2、程序要求:
(1)
(2) 将当前用户(执行该程序的用户)的主目录及个人用户信息(/etc/passwd中该用户的信息)存入文件dlxxlog.log(dlxxlog.log存储于该用户的主目录)中;在信息存入文件dlxxlog.log前先判断dlxxlog.log是否存在,不存在新建,存在,将信息追加到dlxxlog.log中
提示: 当前用户主目录可以从$HOME中提取;
个人用户信息可以利用grep $LOGNAME /etc/passwd
以上信息可以利用重定向输出 输出到文件中
判断dlxxlog.log是否存在
(3) dlxxlog.log移动到此目录中,并将dlxxlog.log的文件权限改为rw- rw- r- -;
3、命令提示:echo who grep test if read mv chmod
三、实验要求
根据实验内容,编写Shell脚本程序,上机调试运行得出实验结果,写出实验报告。
实验报告要求如下:
(1) 写出程序) 打印程序清单及程序运行的结果) 写出调试程序出现的问题及解决的方法)
3学时
通过上机实习,能够编写较复杂的Shell脚本,掌握菜单脚本程序设计,并熟悉一些常用的网络维护命令。
二、实验要求
1、在UBUNTU下,利用VI编辑器编写一个SHELL脚本程序。
2、程序要求:
(1)
Welcome to use the net tool program:
1) Ping
2) Nslookup
3) Netstat
4) Route
5) Log bak
6) Exit
choice?_
当用户选择某一菜单时,完成某一项功能,各菜单的功能如下:
1) Ping
? ? 用ping命令
2) Nslookup
查询Internet上的名字服务器,服务器名称由用户输入。
3) Netstat
查看本机TCP/IP连接状况。
4)Route
显示本机核心路由表。
5) Log bak
执行一个日志文件处理子函数,该函数可显示某一日志文件的大小,并执行备份操作【备份文件的名称里应含有日期戳(即含有日期字段,日期戳的生成:mydate=`date +%d%m` mydate即为日期戳),之后将备份文件的权限设置为400,最后日志文件。日志文件的名称6) Exit
???????? 退出程序。
(一)、该程序的菜单功能可用两种方法实现:
1、用while和case语句实现;
2、用select和case语句实现;
select语句介绍:
select语句通常用于菜单设计,它自动完成接收用户输入的整个过程,包括显示一组菜单以及读入用户的选择。
select语句的语法形式为:
select identifier [ in word ]
do
命令表
done
举例: select的用法, select的功能是:显示一个菜单,配合case使用可以接收用户输入自动匹配选项,分支执行程序】
#!/bin/bash
#ex15
PS3=choice?
select choice in query add delete update exit
do
case $choice in
query) echo call query routine
;;
add) echo call add routine
;;
delete) echo call delete routine
;;
update) echo call update routine
;;
exit) echo call exit routine
break;;
esac
done
echo Your choice is :$choice
#end(二)、命令使用帮助:
?(1) ?格式: ?ping ?-c ?n ?hostname/ip ? ? ? ?举例: ? ? ping ?-c ?2 ?202.100.30.114
(2) ?格式: ?nslookup ? hostname/ip ? ? ? ? 举例: ? ? nslookuo ? ds0.cstd.imut.edu.cn
(3) ?格式: ?route ?-e
(4) ?格式: ?netstat ? ? ? ?
(5) 格式: du –h filename 功能:显示某一文件的大小
(5) 格式: tar
文档评论(0)