在linux的学习中,碰到了如下问题,望得到帮助。

来源:百度知道 编辑:UC知道 时间:2024/06/14 17:40:25
在linux的学习中,碰到了如下问题,望得到帮助。问题如下:

编写一个Shell脚本,从键盘读入5个整数。然后显示最大数、最小数以及平均值。

在编写的过程中,不知道如何运用循环语句,望得到指点
在循环中,怎么运用判断?怎么对从键盘读取的变量进行判断?
如,判断最大的数?

while语句

Shell中有三种用于循环的语句,它们是while语句、for语句和until语句。

while语句的一般形式是:

while 测试条件
do
命令表
done

其执行过程是,先进行条件测试,如果结果为真,则进入循环体(do—done之间部分), 执行其中命令;然后再做条件测试……直至测试条件为假时才终止while语句的执行。例如:

while [ $1 ]
do
if [ -f $1 ]
then echo "display : $1 "
cat $1
else echo "$1 is not a file name . "
fi
shift
done

这段程序对各个给定的位置参数,首先判断其是否是普通文件,若是,则显示其内容;否则,显示它不是文件名的信息。每次循环处理一个位置参数$1,利用shift命令可把后续位置参数左移。

测试条件部分除使用test命令或等价的方括号外,还可以是一组命令。根据其最后一个命令的退出值决定是否进入循环体执行。

until语句

until语句的一般形式是:

until 测试条件
do
命令表
done

它与while语句很相似,只是测试条件不同:当测试条件为假时,才进入循环体,直至测试条件为真时终止循环。

for语句

for语句是最常用的建立循环结构的语句。其使用格式主要有三种,取决于循环变量的取值方式。格式一:

for 变量 in 值表
do
命令表
done

例如:

for day in Monday Wednesday Friday Sunday
do
echo $