文档详情

linux的-shell学习指南(补足六个汉字).doc

发布:2018-12-28约2.63千字共7页下载文档
文本预览下载声明
Linux的SHELL学习指南 TOC \o 1-3 \h \z \u HYPERLINK \l _Toc195173032 Linux的SHELL学习指南 PAGEREF _Toc195173032 \h 1 HYPERLINK \l _Toc195173033 变量 PAGEREF _Toc195173033 \h 2 HYPERLINK \l _Toc195173034 Test命令,用于条件判断 PAGEREF _Toc195173034 \h 3 HYPERLINK \l _Toc195173035 控制流结构 PAGEREF _Toc195173035 \h 4 变量 变量设置值的模式: Variable-name=value 设置实际值到Variable-name Variable-name+value 如果设置了Variable-name,则重设其值 Variable-name:?value 如果未设置Variable-name,显示未定义用户错误信息 Variable-name?value 如果未设置Variable-name,显示系统错误信息 Variable-name:=value 如果未设置Variable-name,设置其值 Variable-name:-value只是用了变量值,但是并没有把值赋给变量。 只是用了变量值,但是并没有把值赋给变量。 同上,但是取值并不设置到Variable-name,可以被替换 例子: # colour=blue # echo “The sky is ${colour:-grey} tody” # The sky is blue tody 变量的显示:${values} # gero=”dir hard“ # echo ${gero} # dir hard 显示本地shell变量:set # set 清除变量的值:unset # pc=enterprise # echo ${pc} # unset pc # echo ${pc} 设置只读的变量:readonly # tape_dev=”/dev/rmt/on” # readonly tape_dev 环境变量: # CONSOLE=tty1 # export CONSOLE //CONSOLE为环境变量 查看环境变量:env 清除环境变量:unset CONSOLE 位置参数:$0,$1,$2…..$9 调用shell时,可以在后面加的参数,在shell里面可以根据位置得到输入的值。 特殊的变量参数: $# 传递到脚本的参数个数 $* 以一个单字符串显示所有向脚本传递的参数。与位置变量不同,此参数可以超过9个 $$ 脚本运行的当前进程ID号 $! 后台运行的最后一个进程的进程ID号 $@ 与$#相同,但使用时加引号,并在引号中返回每个参数 $- 显示shell使用的当前选项,与set命令功能相同。 $? 显示最后命令的退出状态。0:没有错误,其他值表示有错误。 Test命令,用于条件判断 格式: test condition 或者 [ condition ]用方括号时,两边要加上空格。 用方括号时,两边要加上空格。 0标示成功,其他的标示失败。 文件状态的测试: -d:目录 -s:文件长度大于0,非空 -f:文件 -w:可写 -l:符号连接 -u:文件有suid位置 -r:可读 -x:可执行 例子: # [ -w scores.txt ] # echo $? # 0 //成功 # test –w scores.txt # echo $? # 0 逻辑判断: -a:逻辑与,操作符两边均为真,结果为真,否正为假 -o:逻辑或,操作符两边一变为真,结果为真。否则为假 !:逻辑否。 例子: # [ -w results.txt –a –w scores.txt ] # echo $? # 0 字符串测试: =:两个字符串相等 !=:两个字符串不等 -Z:空字符串 -n:非空字符串 例子: # [ -z $editor ] # echo $? # TAPE=”/dev/rmt0 # TYPE2=”/dev/rmt1 # [ “$TAPE” = “$TAPE2” # echo $? # 1 数字测试: -eq:数值相等“=” -ne:数值不相等“!=” -gt:第一个数大于第二个数“” -lt:第一个数小于第二个数“” -le:第一个数小于等于第二个数“=” -ge:第一个数大于等于第二个数“=” 例子: # number=130 # [ “$number” –eq “130” # echo $? # 0 #[ “990” –le “995” ] –a [ “123” –gt “33” 这种方式是错误的。
显示全部
相似文档