if then fi

linux scripts 条件判断一:if then fi 的方式(转)

条件判断一:if then fi 的方式,相信才开始接触linux下面条件判断的人对这些概念都比较陌生,那么当我们开始接触它的时候,那么我们进入它的世界就不远了,加油...ing   笨人在这里希望大家好好研究下linux下面的脚本编写,多多益善啊   呵呵
      我们要了解条件判断,首先就需要知晓它的语法,我们就来学习一下语法:
if [ 条件判断一 ] && (||) [ 条件判断二 ]; then   
<== if 是起始的意思,后面可以接若干个判断式,使用 && 或 ||
执行内容程序
elif [ 条件判断三 ] && (||) [ 条件判断四 ]; then    
<==第二段的判断,如果第一段(也就是if那段)没有符合就来此搜寻条件
执行第二段内容程序
else                                           
<==当前两段都不符合时,就以这段内容来执行!
执行第三段内容程序
fi                                          
<==结束 if then 的条件判断!新手需要注意的一点,别忘记了结束标识。

以下是常犯下精彩犯的错误,我们需要来加强说明一下:
1:在 [ ] 当中,只能有一个判别式;
2:在 [ ] 与 [ ] 当中,可以使用 && 或 || 来组织判别式;
3:每一个独立的组件之间『都需要有空格键来隔开』!

了解了一些简单的理论,那么我们就来编写一个简单的判别式试试
我们需要写一个脚本,提示用户输入指定的内容,才能显示正确的结果,否则提示错误!

vi benren.sh
#!/bin/bash
echo I love Linux
read test
if    [ "$test" = "yes" ]; then       # \\z这里为判别条件,假如我们输入的内容为yes
       echo "me too"                   #   \\这里为条件执行程序,如果满足上面的条件就输出me too
else                                           # \\ 这里为以上的条件不成立就执行下面的输出
       echo "sorry Stop!"             #   \\ 这里为条件不成立执行的程序,输出sorry Stop!
fi                                                 # \\这里为结束标记

由以上的脚本,我们运行一下看看
sh benren.sh
I love Linux
yes          \\这里我们输入的是yes
me too        \\ 这里就显示出了me too
假设我们输入的是其他内容呢?
sh benren.sh
I love Linux
NO                \\这里为我们输入的其他内容
sorry Stop! \\这里就为错误输出提示

综上所述,我们来完成一次大的脚本编写
我们这个脚本的目的是完成检测FTP WWW SSH POP3 端口打开没?
首先建立一个名为www.sh的脚本文件
vi www.sh
#!/bin/bash
# 1.FTP
echo "ftp"
ftp='netstat -an|grep LIST|grep :21'
if [ "$ftp" != "" ]; then
echo "ftp is runing.."
else
echo "ftp down.."
fi
#2.www
echo "www"
www='netstat -an|grep LIST|grep :80'
if [ "$www" != "" ]; then
echo "www is runing.."
else
echo "www down.."
fi
#3. SSH   POP3              \\这里用的是&&和elif判断语句
echo "SSH POP3"
SSH='netstat -an|grep LIST|grep :22'
POP3='netstat -an|grep LIST|grep :25'
if [ "$SSH" != "" ] && [ "$POP3" != "" ]; then
echo "SSH POP3 is runing.."
elif [ "$SSH" = ""] && [ "$POP3" != "" ]; then
echo "SSH is down and POP3 is runing"
elif [ "$SSH" != "" ] && [ "pop3" = "" ]; then
echo "SSH is runing and POP3 is down"
fi
保存退出

sh www.sh
这样如果我们运行www.sh这个脚本就能知道那些端口打开没有啦
很简单吧

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值