linux-shell-脚本编写实验报告.doc
实验报告
课程Linux根底及应用实验名称LinuxShell脚本编写第页
专业_计算机科学与技术__班级__6班_学号__姓名林清萍
实验日期:2011年11月3日报告退发(订正、重做)
一、实验目的
1、掌握shell脚本编写的根本知识;
2、掌握shell脚本中变量的使用;
3、掌握shell脚本中引用命令行参数的方法;
4、掌握for循环、while循环、read命令的使用;
5、掌握命令扩展功能的使用。
二、实验内容
1、使用bash?的for循环语句编写一脚本batchmkdir.sh,能实现以下功能:在当前目录中建立10个目录,目录的命名形式为dir-1、dir-2、dir-3、…..dir-10;
2、编写一个脚本batchuser.sh,能批量建立10个用户帐号,并给用户帐号设定8位的随机密码,同时把该用户名与密码保存到指定的文件中/root/user-pass.txt,以便管理员分发密码;其中帐号的形式为user-1、user-2、…user-10;保存用户名与密码的文件的每行的格式形式为:user-1:ChczVZww
提示:密码可以是命令opensslrand-base647,把用户名与密码对保存到文件中可以使用输出重定向的方法:参考命令echo“user-1:ChczVZww”/root/user-pass.txt
3、在/root目录下编写脚本batchadduser.sh,实现以下功能:当用户以
./batchadduserstu10
的方式运行脚本时,能自动添加stu1、stu2、stu3….stu10的10个帐号,设定8位的随机密码,并设置帐号的密码有效期为60天,下次登陆必须改密码。同时把该用户名与密码保存到指定的文件中/root/batch-user-pass.txt,密码文件的格式同第二题的要求。
4、编写一个shell脚本,实现以下功能:该脚本能读取usernamelist.txt中的用户列表〔一行一个用户名〕建立帐号,并给每个帐号设置8位随机密码,同时把该用户名与密码保存到指定userpass.txt文件中,密码文件的格式同第二题的要求。
补充:
usernamelist.txt用户列表该文件格式如下:(说明,每行一个用户名,)
jack
jason
fried
zike
jicne
ien
三、实验环境
安装有vmware或visualpc软件的window主机,系统中有提供turbolinux或redhat的硬盘镜像
四、实验步骤
1、使用vi编辑工具编写一脚本batchmkdir.sh,使得在当前目录中建立10个目录,目录的命名形式为dir-1、dir-2、dir-3、…..dir-10;
2、编写一个脚本batchuser.sh,能批量建立10个用户帐号,并给用户帐号设定8位的随机密码,同时把该用户名与密码保存到指定的文件中/root/user-pass.txt,以便管理员分发密码;其中帐号的形式为user-1、user-2、…user-10;保存用户名与密码的文件的每行的格式形式为:user-1:ChczVZww
3、在/root目录下编写脚本batchadduser.sh,实现以下功能:当用户以
./batchadduserstu10
的方式运行脚本时,能自动添加stu1、stu2、stu3….stu10的10个帐号,设定8位的随机密码,并设置帐号的密码有效期为60天,下次登陆必须改密码。同时把该用户名与密码保存到指定的文件中/root/batch-user-pass.txt,密码文件的格式同第二题的要求。
4、先添加一个用户名文本,再编写一个shell脚本,使得该脚本能读取usernamelist.txt中的用户列表〔一行一个用户名〕建立帐号,并给每个帐号设置8位随机密码,同时把该用户名与密码保存到指定userpass.txt文件中,密码文件的格式同第二题的要求。
五、实验结果与讨论
1、〔1〕使用vi编辑工具编写batchmkdir.sh脚本
〔2〕进入batchmkdir.sh脚本内编写如下代码
〔3〕运行脚本batchmkdir.sh,并查看当前目录,已成功添加dir-i
2、〔1〕采用vi编辑工具编辑batchuser.sh脚本
I
〔2〕进入脚本编写如下代码
〔3〕运行脚本batchuser.sh,结果如下
〔4〕进入目录下,查看用户名和密码的保存文件,结果如下
3、〔1〕用vi编辑器编辑脚本batchadduser.sh
(2)进入脚本