Shell 编程之if常见语法
2016-07-04 23:12
543 查看
if语句基本语法
常见条件表达式
文件表达式
整数变量表达式
字符串变量表达式
= 作为等于时,其两边都必须加空格,否则失效
常用语法总结:
if condition then staements elif condition then statements else statements fi
常见条件表达式
文件表达式
if [ -f file ] 如果文件存在 if [ -d ... ] 如果目录存在 if [ -s file ] 如果文件存在且非空 if [ -r file ] 如果文件存在且可读 if [ -w file ] 如果文件存在且可写 if [ -x file ] 如果文件存在且可执行
整数变量表达式
shell中逻辑关系判断条件(用于数值判断) ------------------------------------------- | 逻辑关系 | shell语句 | | > | -gt (greater than) | | < | -lt (less than) | | == | -eq (equal) | | >= | -ge (greater equal) | | <= | -le (less equal) | | != | -ne (no equal) | -------------------------------------------
字符串变量表达式
If [ $a = $b ] # 如果string1等于string2 # 字符串允许使用赋值号做等号 if [ $sting1 != $string2 ] # 如果string1不等于string2 if [ -n $string ] # 如果string 非空(非0),返回0(true) if [ -z $string ] # 如果string 为空 if [ $sting ] # 如果string 非空,返回0 (和-n类似)
= 作为等于时,其两边都必须加空格,否则失效
总结:if逻辑判断语句也可写在同一行,用";"分隔。 #! /bin/bash ## if 语句 ## Written by coohx a=5 if [ $a -gt 10 ];then echo "a>10";else echo "a<=10";fi
常用语法总结:
#! /bin/bash ## if 语句 ## Written by COOHX ##############整数变量表达式################## a=5 if [ $a -gt 10 ];then echo "a>10";else echo "a<=10";fi ##############文件表达式###################### # -s 文件存在且非空 if [ -s 1.txt ];then echo "OK!" else echo "false!" fi #############字符串变量表达式################# var1=huangxin var2=coohx #字符串变量判断相等时,等号与左右两边的变量有空格,否则条件表达式‘$var="string"’会被识别为一个变量,即变量 $var="string" #if [ $var2 = "huangxin" ];then #if [ -z $1 -a $var2 = "huangxin" ];then if [ -z $1 ] && [ $var2 != "huangsdfxin" ];then echo "OK!" else echo "false!" fi ##############字符串变量表达式############## string=notnull # $string 等价于 -n $string,即 不为空时返回0,为真! if [ $string ];then echo "not null!" else echo "null!" fi #echo $string ##############if 简化语句 ############ # [ conditions ] 若成立,就执行&&后面的命令 [ -f 1.txt ] && rm 1.txt # [ conditions ] || 若不成立,就执行||后面的命令 [ -f 1.txt ] || touch 1.txt
相关文章推荐