马上注册,享受更多特权
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 Lihoon 于 2020-8-8 17:12 编辑
1 条件判别表达式:真——0,假——1
2 整数判别符:-eq——等于,-gt——大于,-lt——小于,-ne——不等于,-le——小于等于,-ge——大于等于
3 条件测试命令:test或[ ] 测试条件
lihoon@lihoon:~$ val=97 #定义变量val=97
lihoon@lihoon:~$ test $val -gt 63 #用test命令比较变量是否>63
lihoon@lihoon:~$ echo $? #查询上一次命令执行结果
0 #结果为真
lihoon@lihoon:~$ [ $val -gt 100 ] #用[ ]命令比较变量是否>63(注意空格)
lihoon@lihoon:~$ echo $?
1 #结果为假
4 测试是否存在名称为temp的目录:[ -d temp ]
lihoon@lihoon:~/code/Linux_shell$ ls
command.sh sample.sh Shell笔记2.md temp.sh
note.txt shell笔记1.md temp temp.txt
lihoon@lihoon:~/code/Linux_shell$ [ -d temp ]
lihoon@lihoon:~/code/Linux_shell$ echo $?
0
5 测试是否存在名称为temp.txt的文件:[ -f temp.txt ]
lihoon@lihoon:~/code/Linux_shell$ ls
command.sh sample.sh Shell笔记2.md temp.sh
note.txt shell笔记1.md temp temp.txt
lihoon@lihoon:~/code/Linux_shell$ [ -f temp.txt ]
lihoon@lihoon:~/code/Linux_shell$ echo $?
0
other: -p——管道,-l——软连接,-c——字符设备,-b——块设备,-s——socket
6 测试字符串的长度是否为0:
[ -z string ]——长度为0则为真
[ -n string ]——长度非0则为真
lihoon@lihoon:~/code/Linux_shell$ var='hello'
lihoon@lihoon:~/code/Linux_shell$ [ -z $var ]
lihoon@lihoon:~/code/Linux_shell$ echo $?
1
lihoon@lihoon:~/code/Linux_shell$ [ -n $var ]
lihoon@lihoon:~/code/Linux_shell$ echo $?
0
7 比较两个字符串是否为真:[ string1 = string2 ]
lihoon@lihoon:~/code/Linux_shell$ var='hello'
lihoon@lihoon:~/code/Linux_shell$ [ $var = 'hello' ]
lihoon@lihoon:~/code/Linux_shell$ echo $?
0
lihoon@lihoon:~/code/Linux_shell$ [ $var != 'hello' ]
lihoon@lihoon:~/code/Linux_shell$ echo $?
1
8 逻辑与、或、非:-a、-o、!
lihoon@lihoon:~/code/Linux_shell$ [ -d temppp -a "$var" = '10' ] #判断temppp目录是否存在并且变量值等于10
lihoon@lihoon:~/code/Linux_shell$ echo $?
1
|