|
shell 编程中使用到得if语句内判断参数5 G5 `: K2 Q0 k6 x( u8 n
–b 当file存在并且是块文件时返回真 9 C6 k8 J! P9 g7 A3 h0 I
-c 当file存在并且是字符文件时返回真
% l- H- |. z$ E: F+ D1 D$ a7 u-d 当pathname存在并且是一个目录时返回真
, l3 d$ C+ d3 l+ ~2 z& @* V-e 当pathname指定的文件或目录存在时返回真 - I8 S( Z0 C1 b
-f 当file存在并且是正规文件时返回真 4 L$ h* S0 l3 g$ W* \3 [
-g 当由pathname指定的文件或目录存在并且设置了SGID位时返回为真
. e: c) |; s7 P/ r) ~& e; X-h 当file存在并且是符号链接文件时返回真,该选项在一些老系统上无效 $ |% k' ?: }& l+ g, f% I
-k 当由pathname指定的文件或目录存在并且设置了“粘滞”位时返回真
& T) |8 @2 T/ Y' C" D; F-p 当file存在并且是命令管道时返回为真 ; R& F) l+ S; @7 f Z
-r 当由pathname指定的文件或目录存在并且可读时返回为真
( s9 ?5 @& i, o/ _( Z; o, R-s 当file存在文件大小大于0时返回真
; p) {+ E7 B, t3 o* \1 C, m-u 当由pathname指定的文件或目录存在并且设置了SUID位时返回真
4 e# k% Z. n- A; l" P-w 当由pathname指定的文件或目录存在并且可执行时返回真。一个目录为了它的内容被访问必然是可执行的。
* A% d% @: k& O) j T/ L-o 当由pathname指定的文件或目录存在并且被子当前进程的有效用户ID所指定的用户拥有时返回真。
, L: x/ v/ E' L/ ?) X0 y' L0 O% V! \ n3 d- m
UNIX Shell 里面比较字符写法:
% s: ^& ]4 `) [-eq 等于 % b" n7 D4 R0 d: g% F5 q: j
-ne 不等于 9 s! N- L2 [- z' x- O' E
-gt 大于 8 [& Q+ M: r6 Z/ J3 {. D" C+ n
-lt 小于
6 C8 c* ?7 g( n$ a3 D: B1 f-le 小于等于
" K' V8 {' J5 u: V-ge 大于等于
/ w- L1 r: K# C2 S7 S0 J-z 空串 + R. w2 N% e8 R4 u4 g
= 两个字符相等 2 k1 Y4 j; e/ y. @
!= 两个字符不等
8 n" f B% F* E-n 非空串 |
|