- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第八章 Shell编程
教学内容:
Shell的基本概念
Shell编程基础
Shell编程的语句
Shell脚本的运行
教学目标:
了解shell的基本概念
熟悉shell的变量
掌握shell编程的常用语句和shell脚本的运行
教学重点:
shell编程的常用语句
shell脚本的运行
教学难点:
shell功能的实现
Shell的基本概念
Linux shell的特点
便于开发新命令
提高开发处理
内置编程语言
提供后台处理机制
提供管道、命令替换、自动补齐机制
Linux shell的版本
Bourne shell(B shell):Unix的最初Shell,在Shell编程方面比较优秀。
C Shell(csh):在C语言编程方面性能较好
Bash Shell(bash):Bourne Shell的增强版,Linux系统的默认Shell
Korn Shell(ksh):综合B Shell和C Shell 的特点于一身。
Tcsh:C Shell的增强版,具有命令行编程接口和历史记录功能
Shell下的可执行文件
应用程序
Shell脚本
可执行的二进制文件
Bash Shell编程基础
Shell的变量和参数
(1)变量的分类
按变量作用域来分:全局变量,局部变量
按用途划分:系统环境变量,位置参数,用户自定义变量
(2)用户自定义变量
变量名=值
定义变量时,不用加’$’,但在引用变量值时必须加’$’
可以使用export命令输出变量,使其成为全局变量
可使用readonly命令,使变量成为只读变量
可使用unset命令,取消命令的定义
环境变量
Shell在开始执行时就已经定义了一些和系统的工作环境有关的变量,用户还可以重新定义这些变量,常用位置参数是一种在调用Shell程序的命令行中按照各自的位置决定的变量,是在程序名之后输入的参数。位置参数之间用空格分隔,Shell取第一个位置参数替换程序文件中的$1,第二个替换$2,依次类推 $0是一个特殊的变量,它的内容是当前这个Shell程序的文件名,所以,$0不是一个位置参数,在显示当前所有的位置参数时是不包括$0的。预定义变量预定义变量和环境变量相类似,也是在Shell一开始时就定义了的变量。所不同的是,用户只能根据Shell的定义来使用这些变量,而不能重定义它。所有预定义变量都是由$符和另一个符号组成的,常用的Shell预定义变量有:
$# 位置参数的数量。
$* 所有位置参数的内容。
$? 命令执行后返回的状态。
$$ 当前进程的进程号。
$! 后台运行的最后一个进程号。
$0 当前执行的进程名。(1)数值-eq 等于则为真。
-ne 不等于则为真。
-gt 大于则为真。
-ge 大于等于则为真。
-lt 小于则为真。
-le 小于等于则为真。
(2)字串测试:
= 等于则为真。
!= 不相等则为真。
-z字串 字串长度伪则为真。
-n字串 字串长度不伪则为真。
(3)文件测试:
-e文件名 如果文件存在则为真。
-r文件名 如果文件存在且可读则为真。
-w文件名 如果文件存在且可写则为真。
-x文件名 如果文件存在且可执行则为真。
-s文件名 如果文件存在且至少有一个字符则为真。
-d文件名 如果文件存在且为目录则为真。
-f文件名 如果文件存在且为普通文件则为真。
-c文件名 如果文件存在且为字符型特殊文件则为真。
-b文件名 如果文件存在且为块特殊文件则为真。
另外,Linux还提供了与(!)、或(-o)、非(-a)三个逻辑操作符,用于将测试条件连接起来,其优先顺序为:!最高,-a次之,-o最低。“abc”
expr
功能:计算表达式
格式:expr 表达式
实例:expr 10 \* 2
read
功能:从键盘获取变量的值
格式:read 变量名
实例:
read a
read b
c=$a+$b
echo $c
test
功能:测试表达式的真假(等同于[ ])
格式:test 表达式
if
功能:条件分支选择
格式:
if 条件then
条件为真时的命令串
else
条件为假时的命令串
fi
–avug
else
echo “quotaon no exists.”
fi
case
功能:多路分支
格式:Case 参数 in
值1)
语句1
;;
值2)
语句2
;;
、、、、、
*)语句N;;
esac
实例: #vi /etc/quotaman
#! /bin/bash
case “$1” in
start)
/sbi
您可能关注的文档
- 第3章 信息系统资源管理.doc
- 第4步 Linux内存管理.doc
- 第4章 程序设计入门.doc
- 第4章 中文Excel 2003电子教案.doc
- 第4章、Linux 基本命令.doc
- 第4章、Linux_基本命令.doc
- 第4章.SHell编程.doc
- 第4章.SHell编程(续).doc
- 第4章上机步骤.doc
- 第4章习题详解.doc
- 2.1神经调节的结构基础 课件 人教版高中生物学选择性必修1.pptx
- 2.2.1算术平方根 课件 北师大版数学八年级上册.pptx
- 2.3.1细胞通过分裂而增殖 课件(内嵌视频3个)初中生物学北师大版(2024)七年级上册.pptx
- 2.3.2细胞分化形成组织 课件 初中生物学北师大版(2024)七年级上册.pptx
- 4.3.1 角与角的大小比较 课件 2025-2026学年湘教版数学七年级上册.pptx
- 2.3.3生物体的器官、系统 课件 初中生物学北师大版(2024)七年级上册.pptx
- 聚异氰酸酯行业商业计划书.docx
- 2.4节神经系统的分级调节 课件 人教版高中生物学选择性必修1.pptx
- 【公开课】探索勾股定理第1课时(课件)数学北师大版2024八年级上册.pptx
- 综合实践 一天的时间(课件)2025-2026学年度苏教版数学三年级上册.pptx
文档评论(0)