您的位置:首页 > 运维架构 > Shell

SHELL学习笔记----IF条件判断,判断条件

2014-06-18 15:32 609 查看
所有编程语言都离不开逻辑判断,shell也是如此。

1、结构格式

if ...;then
do smithing
elif ...;then
do another smithing
else
do else smithing
fi


2、实例

#!/bin/bash
SYSTEM=$(uname -s)      #获取操作系统 也可以是 SYSTEM=`uname -s`

if [ $SYSTEM = "Linux" ];then
echo "Linux"
elif [ $SYSTEM = "FreeBSD" ];then
echo "FreeBSD"
elif [ $SYSTEM = "Solaris" ];then
echo "Solaris"
else
echo "unknow system $SYSTEM"
fi


3、IF中的各种判断

3.1 、字符串判断

str1 = str2             #当两个串有相同内容、长度时为真
str1 != str2            #当串str1和str2不等时为真
-n str1                 #当串的长度大于0时为真(串非空)
-z str1                 #当串的长度为0时为真(空串)
str1                    #当串str1为非空时为真


3.2、数值的判断

int1 -eq int2    #两数相等为真
int1 -ne int2    #两数不等为真
int1 -gt int2    #int1大于int2为真
int1 -ge int2    #int1大于等于int2为真
int1 -lt int2    #int1小于int2为真
int1 -le int2    #int1小于等于int2为真


3.3、文件的判断

-r file     #用户可读为真
-w file     #用户可写为真
-x file     #用户可执行为真
-f file     #文件为正规文件为真
-d file     #文件为目录为真
-c file     #文件为字符特殊文件为真
-b file     #文件为块特殊文件为真
-s file     #文件大小非0时为真
-t file     #当文件描述符(默认为1)指定的设备为终端时为真


3.4、逻辑判断符

-a         #与
-o         #或
!          #非
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: