linux实验shell编程实验代写,LINUX-Shell编程实验报告.doc

《LINUX管理与应用》课程实验报告

≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡

实验内容和目的

实验目的:

理解Shell程序的设计方法;熟悉Shell程序编辑、运行、调试方法与过程。

实验内容:

(1)Shell 简单编程

用户名回显程序;if-then、if-then-else语句使用;for语句、while语句使用

(2)较复杂的考勤模拟shell程序设计

实验环境

微机、WINDOWS XP、QUICK LINUX、VMWARE虚拟机软件

实验重点及难点

实验重点:SHELL编辑、运行过程;SHELL变量的使用,分支语句的设计,循环语句的设计

实验难点:SHELL语句的使用方法

实验过程(实验过程、实验结果及实验分析)

一、实验过程

1. 编写一个简单的回显用户名的shell程序

2. 使用if-then语句创建简单的shell程序

3. 使用if-then-else语句创建一个根据输入的分数判断是否及格的shell程序

4. 使用for语句创建简单的shell程序

5. 使用while语句创建一个计算1-5的平方的shell程序

6. 用shell设计一个模拟考勤程序

二、实验结果

1.编写一个简单的回显用户名的shell程序

#vi dat

#!/bin/bash

#filename:dat

echo "Mr.$USER,Today is:"

echo `date`

echo Wish you a lucky day!

#chmod +x dat

#./dat

2. 使用if-then语句创建简单的shell程序

#vi bbbb

#!/bin/bash

#filename:bbbb

echo -n "Do you want to continue: Y or N"

read ANSWER

if [ $ANSWER = N -o $ANSWER = n ]

then

echo "your answer is quit! "

fi

#chmod +x bbbb

#./bbbb

3. 使用if-then-else语句创建一个根据输入的分数判断是否及格的shell程序

#vi ak

#!/bin/bash

#filename:ak

echo -n "please input a score:"

read SCORE

echo "You input Score is $SCORE"

if [ $SCORE -ge 60 ];

then

echo -n "Congratulation!You Pass the examination."

else

echo -n "Sorry!You Fail the examination!"

fi

echo -n "press any key to continue!"

read $GOOUT

#chmod +x ak

#./ak

4. 使用for语句创建简单的shell程序

#vi mm

#!/bin/bash

#filename:mm

for ab in 1 2 3 4

do

echo $ab

done

#chmod +x mm

#./mm

5. 使用while语句创建一个计算1-5的平方的shell程序

#vi zx

#!/bin/bash

#filename:zx

int=1

while [ $int -le 5 ]

do

sq=`expr $int \* $int`

echo $sq

int=`expr $int + 1`

done

echo "Job completed"

#chmod +x zx

#./zx

6. 用shell设计一个模拟考勤程序,实现如下功能选择界面:

1:上班签到2:下班签出3:缺勤信息查阅

# vi testshell

#! /bin/bash

#filename:shelltest

exsig=0

while true; do

echo ""

echo "----欢迎使用本系统----"

echo " 1. 上班签到"

echo " 2. 下班签出"

echo " 3. 考勤信息查询"

echo " 4. 退出系统"

echo "----------------------"

echo ""

echo "请输入你的选项:"

read choice

case $choice in

1)echo "请输入你的名字:"

read name

echo "请输入你的密码:"

read password

if test -r /home/user/userinfo.dat

then

while read fname fpassword

do

echo "$fname"

echo "$fpassword"

if test "$fname" = "$name"

then

break

fi

done < /home/user/userinfo.dat

else

echo System Error:userinfo.dat does not exist!

fi

if test "$fname" != "$name"

then

echo "不存在该用户!"

elif test "$fpassword" != "$password"

then

echo "密码不正确!"

else

hour=`date +%H`

if test "$hour" -gt 8

then

echo "你迟到了!"

echo "$name 上班迟到---日期:`date`" >>/home/user/check.dat

else

echo "早上好,$name!"

fi

fi

;;

2)echo "请输入你的名字:"

read name

echo "请输入你的密码:"

read password

if test -r /home/user/userinfo.dat

then

while read fname fpassword

do

if test "$fname" = "$name"

then

break

fi

done < /home/user/userinfo.dat

else

echo System Error:userinfo.dat does not exist!

fi

if test "$fname" != "$name"

then

echo " 不存在该用户!"

elif test "$fpassword" != "$password"

then

echo "密码不正确!"

else

hour=`date +%H`

if test "$hour" -lt 18

then

echo "你早退了!"

echo "$name 下班早退----日期:`date`">> /home/user/check.dat

else

echo "再见,$name!"

fi

fi

;;

3)echo "请输入你的名字:"

read name

echo "请输入你的密码:"

read password

if test -r /home/user/userinfo.dat

then

while read fname fpassword

do

if test "$fname" = "$name"

then

break

fi

done < /home/user/userinfo.dat

else

echo System Error:userinfo.dat does not exist!

fi

if test "$fname" != "$name"

then

echo "不存在该用户!"

elif test "$fpassword" != "$password"

then

echo "密码不正确!"

else

echo "你的记录:"

echo "---------"

cat -b /home/user/check.dat|grep $name

echo "---------"

fi

;;

4)echo "欢迎你的使用,再见!"

exsig=1

;;

*)echo "请输入合法的选项!"

;;

esac

if test "$exsig" = "1"

then

break

fi

done

七.试验运行结果:

#chmod +x testshell

#./testshell

3、 实验分析

通过这次实验,我懂得了定义SHELL程序设计中的变量,掌握了SHELL程序中LINUX基本命令的使用,理解了Shell程序的设计方法,并且熟悉了Shell程序编辑、运行、调试方法与过程。这为我日后继续深入学习Linux课程打下基础。

展开阅读全文

  • 0
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值