- 常用的判断条件
- if判断
- case判断
一、常用的判断条件
1、基本语法
[ condition ](注意condition前后要有空格)。
注意:条件非空即为 true,[ atguigu ]返回true,[返回false。2.常用判断条件。
(1)两个整数之间比较.
= 字符串比较。-lt小于(less than) -le小于等于(less equal).
-eq等于(equal) -gt大于( greater than) .
-ge 大于等于( greater equal) -ne不等于(Not equal)
(2)按照文件权限进行判断。
-r有读的权限(read) -w有写的权限(write) .
-x有执行的权限( execute) ,
(3)按照文件类型进行判断。
-f文件存在并且是一个常规的文件(file)-e文件存在(existence) -d 文件存在并是一个目录( directory)
二、if判断
基本语法:
if[ 添加判断式 ];then
程序
fi
或者是
if[ 条件判断式 ]
then
程序
fi
注意事项:。
(1)[ 条件判断式 ],中括号和条件判断式之间必须有空格。案例操作:
# !/bin/bash
if [ $1 -eq 1 ]
then
echo "banzhang zhen shuai"
elif [ $i -eq 2 ]
then
echo "c1s zhen mei"
fi
三、case判断
1.基本语法。
case S变量名 in .
"值1") .
如果变量的值等于值1,则执行程序1;;
"值2")
如果变量的值等于值2,则执行程序2
;;
...省略其他分支...“
*)如果变量的值都不是以上的值,则执行此处。
;;
esac
注意事项:
1) case行属必须为单词“in”,每一个模式匹配必须以右括号“)”结束。2) 双分号“;;”表示命令序列结束,相当于java中的 break。"
3) 最后的“*)”表示默认模式,相当于java中的default。.案例操作:
需求:星期一到星期天对应数字1-7,对映输入和输出。
#!/bin/bash case $1 in 1) echo "Monday" ;; 2) echo "Tuesday" ;; 3) echo "Wednesday" ;; 4) echo "Thursday" ;; 5) echo "Friday" ;; 6) echo "Saturday" ;; 7) echo "Sunday" ;; *) echo "False" ;; esac