如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
红旗Linux软件技术学院------RCE课程之系统管理第4章Shell编程教学内容:Shell的基本概念Shell编程基础Shell编程的语句Shell脚本的运行教学目标:了解shell的基本概念熟悉shell的变量掌握shell编程的常用语句和shell脚本的运行教学重点:shell编程的常用语句shell脚本的运行教学难点:shell功能的实现一.Shell的基本概念1.Linuxshell的特点便于开发新命令提高开发处理内置编程语言提供后台处理机制提供管道、命令替换、自动补齐机制2.Linuxshell的版本Bourneshell(Bshell):Unix的最初Shell,在Shell编程方面比较优秀。CShell(csh):在C语言编程方面性能较好BashShell(bash):BourneShell的增强版,Linux系统的默认ShellKornShell(ksh):综合BShell和CShell的特点于一身。Tcsh:CShell的增强版,具有命令行编程接口和历史记录功能3.Shell下的可执行文件应用程序Shell脚本可执行的二进制文件二.BashShell编程基础1.Shell的变量和参数(1)变量的分类按变量作用域来分:全局变量,局部变量按用途划分:系统环境变量,位置参数,用户自定义变量(2)用户自定义变量变量名=值邮电:z_an_d@tom.com电话:13856036638红旗Linux软件技术学院------RCE课程之系统管理定义变量时,不用加’$’,但在引用变量值时必须加’$’可以使用export命令输出变量,使其成为全局变量可使用readonly命令,使变量成为只读变量可使用unset命令,取消命令的定义2.环境变量Shell在开始执行时就已经定义了一些和系统的工作环境有关的变量,用户还可以重新定义这些变量,常用环境变量如下:HISTFILE:历史记录文件的位置HISTSIZE:历史记录列表的大小HOME:用户主目录PATH:通用路径UID:用户的UIDPS1(PS2):一(二)级提示符TERM:终端类型SHELL:当前使用的Shell程序PWD:当前工作路径USER:当前登录名LANG:当前字符集注:env用于显示系统环境变量的值3.位置参数位置参数是一种在调用Shell程序的命令行中按照各自的位置决定的变量,是在程序名之后输入的参数。位置参数之间用空格分隔,Shell取第一个位置参数替换程序文件中的$1,第二个替换$2,依次类推。$0是一个特殊的变量,它的内容是当前这个Shell程序的文件名,所以,$0不是一个位置参数,在显示当前所有的位置参数时是不包括$0的。4.预定义变量预定义变量和环境变量相类似,也是在Shell一开始时就定义了的变量。所不同的是,用户只能根据Shell的定义来使用这些变量,而不能重定义它。所有预定义变量都是由$符和另一个符号组成的,常用的Shell预定义变量有:$#位置参数的数量。$*所有位置参数的内容。$?命令执行后返回的状态。$$当前进程的进程号。$!后台运行的最后一个进程号。$0当前执行的进程名。5.比较运算符(1)数值比较-eq等于则为真。-ne不等于则为真。-gt大于则为真。邮电:z_an_d@tom.com电话:13856036638红旗Linux软件技术学院------RCE课程之系统管理-ge大于等于则为真。-lt小于则为真。-le小于等于则为真。(2)字串测试:=等于则为真。!=不相等则为真。-z字串字串长度伪则为真。-n字串字串长度不伪则为真。(3)文件测试:-e文件名如果文件存在则为真。-r文件名如果文件存在且可读则为真。-w文件名如果文件存在且可写则为真。-x文件名如果文件存在且可执行则为真。-s文件名如果文件存在且至少有一个字符则为真。-d文件名如果文件存在且为目录则为真。-f文件名如果文件存在且为普通文件则为真。-c文件名如果文件存在且为字符型特殊文件则为真。-b文件名如果文件存在且为块特殊文件则为真。另外,Linux还提供了与(!)、或(-o)、非(-a)三个逻辑操作符,用于将测试条件连接起来,其优先顺序为:!最高,-a次之,-o最低。三.BashShell的常用语句1.echo功能:显示变量值/字符串格式:echo[参数]字符串参数:-n显示字符串