shell编程——特殊参数、测试等
时间:2009-04-07 来源:zieckey
特殊参数(Special Parameters)
$#:位置参数的数量
$*:所有位置参数的内容 ($1 $2 …)
$@: 所有位置参数的内容(“$1” “$2” … )
$?:命令执行后返回的状态 , 0表示成功,其他表示失败
$$:当前进程的进程号
$!:后台运行的最后一个进程号
$0:当前执行的进程名
test一般有两种格式,即:
test condition
或
[ condition ]
测试数值可以使用许多操作符,一般格式如下:
"number" numeric operator "number"
或者
[ "number" numeric operator "number" ]
numeric operator可为:
-eq 数值相等。 equal
-ne 数值不相等。 not equal
-gt 第一个数大于第二个数。 great than
-lt 第一个数小于第二个数。 less than
-le 第一个数小于等于第二个数。 less equal
-ge 第一个数大于等于第二个数。 great equal
文件状态测试
- d 目录 - s 文件长度大于0、非空
- f 正规文件 - w 可写
- L 符号连接 - u 文件有s u i d位设置
- r 可读 - x 可执行
在shell解释命令行里的标记(char/word)的时候,空格和TAB、换行符就被当做IFS,分隔符
$#:位置参数的数量
$*:所有位置参数的内容 ($1 $2 …)
$@: 所有位置参数的内容(“$1” “$2” … )
$?:命令执行后返回的状态 , 0表示成功,其他表示失败
$$:当前进程的进程号
$!:后台运行的最后一个进程号
$0:当前执行的进程名
test一般有两种格式,即:
test condition
或
[ condition ]
测试数值可以使用许多操作符,一般格式如下:
"number" numeric operator "number"
或者
[ "number" numeric operator "number" ]
numeric operator可为:
-eq 数值相等。 equal
-ne 数值不相等。 not equal
-gt 第一个数大于第二个数。 great than
-lt 第一个数小于第二个数。 less than
-le 第一个数小于等于第二个数。 less equal
-ge 第一个数大于等于第二个数。 great equal
文件状态测试
- d 目录 - s 文件长度大于0、非空
- f 正规文件 - w 可写
- L 符号连接 - u 文件有s u i d位设置
- r 可读 - x 可执行
在shell解释命令行里的标记(char/word)的时候,空格和TAB、换行符就被当做IFS,分隔符
相关阅读 更多 +