已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本资料由-大学生创业|创业|创业网/提供资料第4章 Shell编程教学内容:n Shell的基本概念n Shell编程基础n Shell编程的语句n Shell脚本的运行教学目标:n 了解shell的基本概念n 熟悉shell的变量n 掌握shell编程的常用语句和shell脚本的运行教学重点:n shell编程的常用语句n shell脚本的运行教学难点:n shell功能的实现一 Shell的基本概念1 Linux shell的特点n 便于开发新命令n 提高开发处理n 内置编程语言n 提供后台处理机制n 提供管道、命令替换、自动补齐机制2 Linux shell的版本n Bourne shell(B shell):Unix的最初Shell,在Shell编程方面比较优秀。n C Shell(csh):在C语言编程方面性能较好n Bash Shell(bash):Bourne Shell的增强版,Linux系统的默认Shelln Korn Shell(ksh):综合B Shell和C Shell 的特点于一身。n Tcsh:C Shell的增强版,具有命令行编程接口和历史记录功能3 Shell下的可执行文件n 应用程序n Shell脚本n 可执行的二进制文件二 Bash Shell编程基础1 Shell的变量和参数(1)变量的分类n 按变量作用域来分:全局变量,局部变量n 按用途划分:系统环境变量,位置参数,用户自定义变量(2)用户自定义变量变量名=值n 定义变量时,不用加$,但在引用变量值时必须加$n 可以使用export命令输出变量,使其成为全局变量n 可使用readonly命令,使变量成为只读变量n 可使用unset命令,取消命令的定义2 环境变量Shell在开始执行时就已经定义了一些和系统的工作环境有关的变量,用户还可以重新定义这些变量,常用环境变量如下:n HISTFILE:历史记录文件的位置n HISTSIZE:历史记录列表的大小n HOME:用户主目录n PATH:通用路径n UID:用户的UIDn PS1(PS2):一(二)级提示符n TERM:终端类型n SHELL:当前使用的Shell程序n PWD:当前工作路径n USER:当前登录名n LANG:当前字符集注:env用于显示系统环境变量的值3 位置参数位置参数是一种在调用Shell程序的命令行中按照各自的位置决定的变量,是在程序名之后输入的参数。位置参数之间用空格分隔,Shell取第一个位置参数替换程序文件中的$1,第二个替换$2,依次类推。 $0是一个特殊的变量,它的内容是当前这个Shell程序的文件名,所以,$0不是一个位置参数,在显示当前所有的位置参数时是不包括$0的。4 预定义变量预定义变量和环境变量相类似,也是在Shell一开始时就定义了的变量。所不同的是,用户只能根据Shell的定义来使用这些变量,而不能重定义它。所有预定义变量都是由$符和另一个符号组成的,常用的Shell预定义变量有:$# 位置参数的数量。$* 所有位置参数的内容。$? 命令执行后返回的状态。$ 当前进程的进程号。$! 后台运行的最后一个进程号。$0 当前执行的进程名。5 比较运算符(1)数值比较n -eq 等于则为真。n -ne 不等于则为真。n -gt 大于则为真。n -ge 大于等于则为真。n -lt 小于则为真。n -le 小于等于则为真。(2)字串测试:n = 等于则为真。n != 不相等则为真。n -z字串 字串长度伪则为真。n -n字串 字串长度不伪则为真。(3)文件测试:n -e文件名 如果文件存在则为真。n -r文件名 如果文件存在且可读则为真。n -w文件名 如果文件存在且可写则为真。n -x文件名 如果文件存在且可执行则为真。n -s文件名 如果文件存在且至少有一个字符则为真。n -d文件名 如果文件存在且为目录则为真。n -f文件名 如果文件存在且为普通文件则为真。n -c文件名 如果文件存在且为字符型特殊文件则为真。n -b文件名 如果文件存在且为块特殊文件则为真。另外,Linux还提供了与(!)、或(-o)、非(-a)三个逻辑操作符,用于将测试条件连接起来,其优先顺序为:!最高,-a次之,-o最低。三 Bash Shell的常用语句1 echo功能:显示变量值字符串格式:echo 参数 字符串参数:-n 显示字符串且不换行,默认echo显示字符串之后立即换行实例:echo -n “abc”2 expr功能:计算表达式格式:expr 表达式实例:expr 10 * 23 read功能:从键盘获取变量的值格式:read 变量名实例:read aread bc=$a+$becho $c4 test功能:测试表达式的真假(等同于 )格式:test 表达式5 if功能:条件分支选择格式: if 条件表达式then条件为真时的命令串else条件为假时的命令串fi 实例: if -x /sbin/quotaon then /sbin/quotaon avug else echo “quotaon no exists.”fi6 case 功能:多路分支 格式:Case 参数 in 值1)语句1; 值2) 语句2; 、 *)语句N; esac实例: #vi /etc/quotaman #! /bin/bash case “$1” in start) /sbin/quataon avug ; stop) /sbin/quotaoff avug ; restart) /sbin/quotaoff avug /sbin/quotaon -avug ; *) echo “enter start/stop/restart” ; esac7 for 功能:循环执行多条语句 格式:for 参数 in 字符串do 循环体 done 实例: for i in /bin/* do echo $i done8 while功能:实现条件循环,当条件为真时执行循环体格式:while条件/命令do循环体done实例:while “$a” = “$b” dosleep 5done9 until功能:实现条件循环,当条件为假时执行循环体格式:until 条件/命令do循环体done实例:myvar=0 until $myvar -eq 10 do echo $myvar myvar=$( $myvar + 1 ) done10 函数格式:function函数名(参数)函数体实例:#! /bin/bashstart( ) if -x /sbin/quotaon then /sbin/quotaon avugfistop ()if -x /sbin/quotaoff then/sbin/quotaoff avugfirestart()stopstartcase $1 instart)start;stop)stop;restart)restart;*)echo “error!”;esac11 exit功能:退出脚本文件格式:exit (0或1)实例:if -f /etc/sysconfig/network then/etc/rcd/init.d/network startelseexit 1fi12 break功能:退出循环格式:break13 continue功能:继续下一次循环格式:continue14 exec 功能:调用其它命令,且不创建新进程格式:exec 命令四 脚本的运行方式方式一:1改变脚本文件的属性,让用户具有执行权#chmod 权限值 脚本文件
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 城口县农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)附答案详解(完整版)
- 上海市农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)附答案详解(预热题)
- 安庆市农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)附答案详解(巩固)
- 2026年安阳市农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)及答案详解(名师系列)
- 黔南布依族苗族自治州农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)含答案详解ab卷
- 嘉兴市农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)带答案详解(完整版)
- 2026年杭州市农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)及答案详解(名校卷)
- 塔城地区农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)及答案详解(基础+提升)
- 2026年黔东南苗族侗族自治州农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)含答案详解(轻巧夺冠)
- 2025高校辅导员素质能力大赛竞赛练习试卷及答案
- 中国银河证券可转债权限开通答案
- 家庭老人赡养协议书
- 名画中的瘟疫史知到智慧树章节测试课后答案2024年秋上海健康医学院
- 宗春山安全第一课
- 财务咨询公司税务筹划指南范文
- 2024年黑龙江省哈尔滨市中考语文试题
- 一年级数学上册看图列式专项练习题(附解析)
- 三度房室传导阻滞护理查房
- 消防安全评估验收合同
- 五年级科学上册(教科版)第2.5课风的作用教学设计
- 2026年全年日历表带农历(A4可编辑可直接打印)预留备注位置
评论
0/150
提交评论