linux shell 逻辑运算符 Posted on 2015-04-15 21:53 寒星月冷 阅读(...) 评论(...) 编辑 收藏一、逻辑卷标
逻辑卷标
表示意思
1.
关于档案与目录的侦测逻辑卷标!
-f
常用!侦测『档案』是否存在 eg: if [ -f filename ]
-d
常用!侦测『目录』是否存在
-b
侦测是否为一个『 block 档案』
-c
侦测是否为一个『 character 档案』
-S
侦测是否为一个『 socket 标签档案』
-L
侦测是否为一个『 symbolic link 的档案』
-e
侦测『某个东西』是否存在!
2.
关于程序的逻辑卷标!
-G
侦测是否由 GID 所执行的程序所拥有
-O
侦测是否由 UID 所执行的程序所拥有
-p
侦测是否为程序间传送信息的 name pipe 或是 FIFO (老实说,这个不太懂!)
3.
关于档案的属性侦测!
-r
侦测是否为可读的属性
-w
侦测是否为可以写入的属性
-x
侦测是否为可执行的属性
-s
侦测是否为『非空白档案』
-u
侦测是否具有『 SUID 』的属性
-g
侦测是否具有『 SGID 』的属性
-k
侦测是否具有『 sticky bit 』的属性
4.
两个档案之间的判断与比较 ;例如[ test file1 -nt file2 ]
-nt
第一个档案比第二个档案新
-ot
第一个档案比第二个档案旧
-ef
第一个档案与第二个档案为同一个档案( link 之类的档案)
5.
逻辑的『和(and)』『或(or)』
&&
逻辑的 AND 的意思
||
逻辑的 OR 的意思
二、运算符号
运算符号
代表意义
=
等于 应用于:整型或字符串比较 如果在[] 中,只能是字符串
!=
不等于 应用于:整型或字符串比较 如果在[] 中,只能是字符串
<
小于 应用于:整型比较 在[] 中,不能使用 表示字符串
>
大于 应用于:整型比较 在[] 中,不能使用 表示字符串
-eq
等于 应用于:整型比较
-ne
不等于 应用于:整型比较
-lt
小于 应用于:整型比较
-gt
大于 应用于:整型比较
-le
小于或等于 应用于:整型比较
-ge
大于或等于 应用于:整型比较
-a
双方都成立(and) 逻辑表达式 –a 逻辑表达式
-o
单方成立(or) 逻辑表达式 –o 逻辑表达式
-z
空字符串
-n
非空字符串