Shell Script学习笔记 2

逻辑判断式与表达式

关于文件与目录的检测逻辑属

逻辑属性 含义
-f 常用!检测『文件』是否存
-d 常用!检测『目录』是否存
-b 检测是否为一个『 block 文』
-c 检测是否为一个『 character 文』
-S 检测是否为一个『 socket 标签文』
-L 检测是否为一个『 symbolic link 的文』
-e 检测『某个东』是否存在!

关于程序的逻辑卷标

逻辑属性 含义
-G 检测是否由 GID 所执行的程序所拥有
-O 检测是否由 UID 所执行的程序所拥有
-p 检测是否为程序间传送信息的 name pipe 或是 FIFO (老实说,这个不太懂!)

关于文件的属性检测

逻辑属性 含义
-r 检测是否为可的属性
-w 检测是否为可以写的属性
-x 检测是否为可执的属性
-s 检测是否为『非空白文』
-u 检测是否具有『 SUI 』的属性
-g 检测是否具有『 SGI 』的属性
-k 检测是否具有『 sticky bi 』的属性

两个文件之间的判断与比较

例如『 test file1 -nt file2』

逻辑属性 含义
-nt 第一个文件比第二个文件新
-ot 第一个文件比第二个文件旧
-ef 第一个文件与第二个文件为同一个文件( link 之类的文件)

逻辑的『和(and)』『或(or)

逻辑属性 含义
&& 逻辑的 AND 的意
|| 逻辑的 OR 的意

运算符号

运算符号 代表意义
= 等于
!= 不等于
< 小于
> 大于
-eq 等于
-ne 不等于
-lt 小于
-gt 大于
-le 小于或等于
-ge 大于或等于
-a 双方都成立(and)
-o 单方成立(or)
-z 空字符串
-n 非空字符串

条件式判断:if…then…fi, case…..esac

待续…

注:文章中可能有很多错误,也有可能出现无法使用的情况,因为此技术博文是我的学习笔记,我只是记载一些看到或者想到东西,所以我不推荐你来按照该博文的内容进行直接使用。谢谢~~