shell 逻辑运算符逻辑表达式详解

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell 逻辑运算符逻辑表达式详解相关的知识,希望对你有一定的参考价值。

逻辑符号

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 非空字符串


本文出自 “Linux_woniu” 博客,请务必保留此出处http://llu1314.blog.51cto.com/5925801/1965332

以上是关于shell 逻辑运算符逻辑表达式详解的主要内容,如果未能解决你的问题,请参考以下文章

逻辑运算符及其优先级,C语言逻辑运算符及其优先级详解

Python中 and or 运算顺序详解 --- 短路逻辑

shell之算数运算符逻辑运算符关系运算符布尔运算符文件测试运算符

13种Shell逻辑与算术,能写出5种算你赢!

13种Shell逻辑与算术,能写出5种算你赢!

26.Python三目运算符(三元运算符)用法详解