linux中shell if 判断总结

UNIX Shell 里面比较字符写法编程

-eq     等于;              -ne    不等于;编程语言

-gt    大于;             -lt    小于 ;字符串

-le    小于等于;       -ge   大于等于;file

-z    空串;                   -n    非空串;终端

=    两个字符相等;     !=    两个字符不等语法

不管什么编程语言都离不开条件判断。SHELL也不例外。脚本

大致的格式以下:语言

if list then
do something here
elif list then
do another thing here
else
do something else here
fi

基本上和其余脚本语言同样。没有太大区别。不过值得注意的是。[]里面的条件判断。说明以下:文件

1 字符串判断字符

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

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 文件相关的if判断条件语句

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

4 复杂逻辑判断

-a        与
-o       或
!       非

语法虽然简单,可是在SHELL里使用的时候,它能够实现强大的功能或执行逻辑。

相关文章
相关标签/搜索