shell program
时间:2008-10-22 来源:libydwei2007
1、shell变量定义的规则
变量是以字母或下划线开始的字符串,它对大小写敏感。shell程序用$var的形式来引用名为var的变量值
2、环境变量
例如:HOME,PATH,TERM,UID,PWD,PS1
3、位置变量
是指在shell程序名之后的参数,用$n表示
$n 第几个参数
$# 参数的个数
$? 前一个命令执行后返回的状态
$$ 当前进程的PID
$! 最近运行的后台进程的PID
$0 当前执行的进程名
4、test 或 []
用于测试后面的表达式的值是否为真,若为真,则返回0,否则返回非0值
1、文件测试
-e filename 如果文件存在
-s filename 如果文件存在且非0
-r filename 如果文件存在且可读
-w filename 如果文件存在且可写
-x filename 如果文件存在且可执行
-d filename 如果文件存在且为目录
-f filename 如果文件存在且为普通文件
-c filename 如果文件存在且为字符设备文件
-b filename 如果文件存在且为块设备文件
2、数值测试
test n1 -eq n2 整数n1 和 n2 相等
test n1 -ne n2 整数n1 和n2 不相等
test n1 -gt n2 整数n1 大于 n2
test n1 -ge n2 整数n1 大于等于n2
test n1 -lt n2 整数n1 小于n2
test n1 -le n2 整数n1 小于等于n2
3、字符串测试
test s 字符串是否为空
test s1=s2 字符串s1等于s2
test s1!=s2 字符串s1不等于s2
test -z s 字符串s为空
4、逻辑操作符
与(-a),或(-o),非(!)
优先级为:!最高 "-a"次之,"-o"最低
变量是以字母或下划线开始的字符串,它对大小写敏感。shell程序用$var的形式来引用名为var的变量值
2、环境变量
例如:HOME,PATH,TERM,UID,PWD,PS1
3、位置变量
是指在shell程序名之后的参数,用$n表示
$n 第几个参数
$# 参数的个数
$? 前一个命令执行后返回的状态
$$ 当前进程的PID
$! 最近运行的后台进程的PID
$0 当前执行的进程名
4、test 或 []
用于测试后面的表达式的值是否为真,若为真,则返回0,否则返回非0值
1、文件测试
-e filename 如果文件存在
-s filename 如果文件存在且非0
-r filename 如果文件存在且可读
-w filename 如果文件存在且可写
-x filename 如果文件存在且可执行
-d filename 如果文件存在且为目录
-f filename 如果文件存在且为普通文件
-c filename 如果文件存在且为字符设备文件
-b filename 如果文件存在且为块设备文件
2、数值测试
test n1 -eq n2 整数n1 和 n2 相等
test n1 -ne n2 整数n1 和n2 不相等
test n1 -gt n2 整数n1 大于 n2
test n1 -ge n2 整数n1 大于等于n2
test n1 -lt n2 整数n1 小于n2
test n1 -le n2 整数n1 小于等于n2
3、字符串测试
test s 字符串是否为空
test s1=s2 字符串s1等于s2
test s1!=s2 字符串s1不等于s2
test -z s 字符串s为空
4、逻辑操作符
与(-a),或(-o),非(!)
优先级为:!最高 "-a"次之,"-o"最低
相关阅读 更多 +