1、脚本编程-脚本参数实验目的:学会shell脚本编程的数据输入、条件判断、大小比较等操作实验要求:编写脚本,在脚本中对输入的两个参数进行大小比较实验器材:软件:安装了RHEL5的vmware虚拟机硬件:PC 机一台实验代码与分析:实验代码1-2-6 1-2-6#!/bin/bash#将第一个命令行参数 传递给变 量a, 第二个命令行参数传递给变量ba=$1b=$2#判断a或者b变量是否为空,只要有一个为空就打印提示语句并退出if -z $a | -z $b thenecho “please enter 2 no“read aread b#判断a和b的大小,并根据判断结果打印语句fiif $a -
2、eq $b ; thenecho “number a = number b“else if $a -gt $b thenecho “number anumber b“elif $a -lt $b thenecho “number anumber b“fifi实验:脚本编程-统计文件实验目的:学会使用shell脚本编程的循环控制、文件属性判断等操作实验要求:编写脚本,统计当前目录下的文件数目实验器材:软件:安装了RHEL5的vmware虚拟机硬件:PC 机一台实验代码与分析:实验代码#!/bin/bash#变量counter 用于统计文件的数目counter=0#变量files遍历一遍当前文件夹
3、for files in *do#判断的files是否是文件,如果是就将counter变量的值加一再赋给自己if -f “$files“ thencounter=expr $counter + 1fidone#输出结果echo “There are $counter files in pwd“实验:脚本编程-倒序输出实验要求:编写脚本,将用户输入的数字按照倒序输出实验器材:软件:安装了RHEL5的vmware虚拟机硬件:PC 机一台实验代码与分析:实验代码1-2-8 1-2-8#!/bin/bash#提示用户输 入echo -n “Pleasw enter number : “read n #
4、读入输入的值放到变量n中sd=0rev=“on=$n #将变量n 的值保存到 变量on中,方便以后用到echo “You put number is $n“while $n -gt 0 dosd=$( $n % 10 ) #求余n=$( $n / 10 ) #去掉当前的最后一位数后剩下的数rev=“$rev$sd“ #将当前的最后一位数放到字符串之后doneecho “$on in a reverse order $rev“代码分析倒序输出的算法,例如用户输入的是123。那么第一次运行while 循环时sd值为3、 n值为12、rev值为“3”,第二次运行while循环时sd值为2、n值为1、
5、 rev值为“32” ,第三次运行 while循环时sd 值为1、n值为0、rev值为“ 321”,在次循环时由于不满足循环条件所以循环结束。实验:脚本编程-监视文件实验目的:熟练shell脚本编程实验要求:编写脚本,移动一文件,如果目标位置存在该文件,则监视该文件,直到文件被删除后才移动该文件实验器材:软件:安装了RHEL5的vmware虚拟机硬件:PC 机一台实验代码与分析:实验代码#!/bin/bash#判断命令行是否代 带有两个文件名的参数if “$1“ = “ | “$2“ = “ thenecho “Please enter file name“read fi#判断目标文件是否存在if -e $2 thenecho “The file already exists“until ! -f $2 #监视该文件是否被 删除dosleep 1doneecho “The file have been deleted“fiif ! mv $1 $2 thenecho “mv sucessful“elseecho “mv error“fi