码迷,mamicode.com
首页 > 系统相关 > 详细

shell脚本判断语句和循环语句

时间:2018-09-26 00:11:36      阅读:284      评论:0      收藏:0      [点我收藏+]

标签:bsp   done   $?   one   txt   nbsp   控制语句   bash   echo   

技术分享图片

             技术分享图片

if判断语句

技术分享图片

 

exit跳出判读语句

技术分享图片

不加exit的结果

技术分享图片

 

 

 

read

技术分享图片

-n(不换行)

技术分享图片

判断是否输入的是数字

read age
[[ $age =~ ^[0-9]+$ ]]
if [ $? -ne 0 ]; then
echo "你输入的不是一个数字"
exit 1
fi

技术分享图片

技术分享图片

 

 

case判断语句

技术分享图片

 

 

 

 

 

#!/bin/bash
cat <<EOF
###########################################

 

欢迎学习shell编程

 

###########################################
EOF
echo
read -p "你是否同意继续学习(y/n):" ans
case $ans in
(y|Y)
echo "非常好,进行下一步操作!"
;;
(n|N)
echo "你不同意,退出!"
exit 1
;;
(*)
echo "只能输入y/n,不能输入其他的"
exit 1;;
esac
echo ----------------------------------------
echo
echo ‘这个是脚本的正文‘

 

技术分享图片

 

 技术分享图片

 技术分享图片

技术分享图片

 seq 用于生成从一个数到另一个数之间的所有整数。 

技术分享图片

-w 指定输出数字同宽 

 技术分享图片

`seq 1 10`----------------------为反引号

技术分享图片

技术分享图片

循环的控制语句

break:

如果遇到了break,break的语句不再执行了,而且要停止循环

技术分享图片

技术分享图片

 输出6,先打印在跳出

技术分享图片

技术分享图片

 break跳出用法

技术分享图片

技术分享图片

跳出一层循环,break后面默认为1

技术分享图片

技术分享图片

跳出两层循环

技术分享图片

技术分享图片

停止第三层循环

技术分享图片

技术分享图片

continue:

如果遇到了continue的话,continue后面的语句不再执行了

直接进入下一次循环

技术分享图片

技术分享图片

 

for循环实现简单的用于查看局域网中那个IP使用,那个IP未使用

脚本内容如下:

#!/bin/bash
for i in $(seq 253)
do
if ping 192.168.0.$i -c 2;
then
echo "192.186.0.$i is use" >> /mnt/up.txt
else
echo "192.168.0.$i id not use" >> /mnt/down.txt
fi
done

技术分享图片

 

 

while循环

 declare变量声明

-i:将变量声明为整型

技术分享图片

技术分享图片

 

技术分享图片

技术分享图片

 

技术分享图片

 

 

 

 

 

技术分享图片

while死循环

不停的开启vsftpd这个服务

技术分享图片

until循环

until和while相反。

until 循环执行一系列命令直至条件为 true 时停止。

技术分享图片

技术分享图片

 

shell脚本判断语句和循环语句

标签:bsp   done   $?   one   txt   nbsp   控制语句   bash   echo   

原文地址:https://www.cnblogs.com/djlsunshine/p/9697312.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!