chapte13:学习shell scripts之(2)判断式的使用

一。利用test命令的测试功能

里面有用到变量的累加。

 

二。判断标志

文件名的文件类型判断

-e:文件名是否存在

-f:文件名是否存在且为文件

-d:文件名是否存在且为目录

文件的权限检测

-r, -w, -x

两个文件之间的比较

两个整数的比较字符串判定

-z:判断字符串是否为空,若是则返回true

-n:与-z相反,可以省略

=:

!=

多重条件判断

-a:两个条件同时成立返回true,如  test -r file -a -x file

-o:任何一个条件成立返回true, 如 test -r file -o -x file

!:反向状态,如test ! -x file

 

三。利用判断符号 [ ]

如下

要注意的是:

(1)中括号内的每个组件都在用空格分开。

(2)内部的变量最好用双引号包起来。

(3)内部的常量最好用单引号或者双引号包起来。

 

四。shell script 的默认变量

  能否在脚本后面带参数?类似于在命令后面带参数。答案是可以。script实现这个功能的方法如下

/path/to/script opt1 opt2 opt3分别对应

$0 $1 $2 $3 $4

也就是说执行的脚本文件名为$0, 其它的是参数。

除此外,特殊的变量:

$#:表示参数的个数

$@:代表$1,$2,$3,$4之意,每个变量都是独立的(用双引号包起来)

$*:同上。

例子:

结果如下:

除此之外,我们还可以通过shift进行参数的移动。

 

posted @ 2016-01-05 00:08  chuiyuan  阅读(259)  评论(0编辑  收藏  举报