学习Linux总结-day1之shell脚本-循环

学习Linux总结-day1之shell脚本-循环

我们在学习其他高级语言的时候,学习循环 都学过那些?
for while do while 一般来说就这三个
我今天在学习shell脚本主要学习了 for 和 while 循环
(ps:linux 中没有 do while)
话不多说 先上段代码

for((i=1;i<=9;i++ ))
do
        for((j=1;j<=i;j++ ))
        do
                echo -n  $i*$j=`expr  $i \* $j`"  "
        done
        echo  
done

结果

1*1=1  
2*1=2  2*2=4  
3*1=3  3*2=6  3*3=9  
4*1=4  4*2=8  4*3=12  4*4=16  
5*1=5  5*2=10  5*3=15  5*4=20  5*5=25  
6*1=6  6*2=12  6*3=18  6*4=24  6*5=30  6*6=36  
7*1=7  7*2=14  7*3=21  7*4=28  7*5=35  7*6=42  7*7=49  
8*1=8  8*2=16  8*3=24  8*4=32  8*5=40  8*6=48  8*7=56  8*8=64  
9*1=9  9*2=18  9*3=27  9*4=36  9*5=45  9*6=54  9*7=63  9*8=72  9*9=81 

如你所见 就是一个99乘法表
中间有一些需要注意的点 是我在学习其他语言时候一些别扭的点
就是关于换行 echo 是默认换行的 加 -n 是取消换行

此外 for 还有另一种形势

for i in `seq 9`
do
        for j in `seq $i`

        do
                echo -n  $i*$j=`expr  $i \* $j`"  "
        done
        echo  
done


这个就是用另一种形式 的99乘法表
需要注意的是 seq 左右两边的 不是引号 而是 tab键 上面的波浪键(我是这么叫的。。。)

下面我说一下 和while循环

i=$RANDOM
i=`expr $i % 100 + 1`
while ((1))
do
echo "您猜个数"
read j
if [ $i -eq $j ]
then
        echo "您猜对了"
        break
elif [ $i -lt $j  ]
then
        echo "您猜大了"
else
        echo "您猜小了"
fi
done

这是昨天 学习 while 做的一个小脚本 猜数字游戏 猜对退出 1-100随机数

while 其实 除了 循环变量 和增量这些 需要自己写 感觉还是挺麻烦的 不过 他有他自己的好处

语法其实还是和 for 循环 挺相似的

下面还有一些我跟做的小作业

#!/bin/bash
i=0
sum=0
while [ $i -le 100 ]
do
        sum=`expr $i + $sum `
        i=`expr $i + 1 `
done
echo $sum




#!/bin/bash
pro=1
i=1
while [ $i -le 10 ]
do
        pro=`expr $pro \*  $i`
        i=`expr $i + 1 `
done
echo $pro

#!/bin/bash
[ ! $# -eq 1 ] && echo "args error!!!" && exit 1
id $1 >&/dev/null && echo "user exist" && exit 1
useradd $1 >&/dev/null && echo $1 | passwd --stdin $1 >&/dev/null && echo "user add success" && exit 1
echo "i don't know ,user add fail" && exit 1



关于循环我自己学习的可能不完善 如果有什么错误 指出就好 毕竟是学习笔记

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值