2019年第8讲Shell程序设计ppt课件.ppt

2019年第8讲Shell程序设计ppt课件.ppt

ID:59448696

大小:96.00 KB

页数:37页

时间:2020-09-17

2019年第8讲Shell程序设计ppt课件.ppt_第1页
2019年第8讲Shell程序设计ppt课件.ppt_第2页
2019年第8讲Shell程序设计ppt课件.ppt_第3页
2019年第8讲Shell程序设计ppt课件.ppt_第4页
2019年第8讲Shell程序设计ppt课件.ppt_第5页
资源描述:

《2019年第8讲Shell程序设计ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第8讲Shell程序设计Shell的含义Shell既是一种命令语言,又是一种程序设计语言作为命令语言,它交互式地解释和执行用户输入的命令作为程序设计语言,它定义了各种变量和参数,并提供了在高级语言中才有的控制结构,如循环和分支。目前流行的Shellash:Linux中占用资源最少的一个小Shell,它只包含24个内部命令bash:Linux系统默认的Shell,包含40个内部命令,基于GNU架构发展而来。ksh:与商业发行版的ksh兼容,包含42个内部命令,由AT&TBelllab.发展而来,兼容于bashcsh:是Linux

2、比较大的内核,共包含52个内部命令,BillJoy设计依附亍BSD版zsh:是Linux最大的Shell之一,共包含84个内部命令,若没有特殊用途,没有必要安装。Bash的功能命令记忆能力,可多达上千个,上次登录执行过的命令记在~/.bash_history,本次在内存命令补全功能,按[Tab]键根据自己的习惯设置别名,例aliaslm='ls-al'shellscripts通配符Shell基本语法输入输出重定向“>”输出重定向到一个文件“>>”输出追加到一个文件“<”输入重定向管道“

3、”前台与后台前台:command后台:c

4、ommand&Shell常用命令bash命令解释程序包含了一些内部命令。内部命令在目录列表时是看不见的,它们由shell本身提供。1.echo命令格式:echoarg功能:在屏幕上打印出由arg指定的字符串。2.eval命令格式:evalargs功能:当shell程序执行到eval语句时,shell读入参数args,并将它们组合成一个新的命令,然后执行。Shell常用命令3.exec命令格式:exec命令命令参数功能:当shell执行到exec语句时,不去创建新的子进程,而是转去执行指定的命令,当指定的命令执行完时,该进程,也

5、就是最初的shell就终止了,所以shell程序中exec后面的语句将不再被执行。4.export命令格式:export变量名或:export变量名=变量值功能:shell可以用export把它的变量向下带入子shell从而让子进程继承父进程中的环境变量。但子shell不能用export把它的变量向上带入父shell。注意:不带任何变量名的export语句将显示出当前所有的export变量。Shell常用命令5.readonly命令格式:readonly变量名功能:将一个用户定义的shell变量标识为不可变的。不带任何参数的r

6、eadonly命令将显示出所有只读的shell变量。6.read命令格式:read变量名表功能:从标准输入设备读入一行,分解成若干字,赋值给shell程序内部定义的变量。7.shift语句功能:shift语句按如下方式重新命名所有的位置参数变量:$2成为$1,$3成为$2……在程序中每使用一次shift语句,都使所有的位置参数依次向左移动一个位置,并使位置参数“$#”减一,直到减到0。Shell常用命令8.wait功能:是shell等待在后台启动的所有子进程结束。Wait的返回值总是真。9.exit功能:退出shell程序。在

7、exit之后可有选择地指定一个数字作为返回状态。10.“.”(点)命令格式:.Shell程序文件名功能:使shell读入指定的shell程序文件并依次执行文件中的所有语句。创建和执行shell程序1.创建一个别名文件:(bash)示范文件myenv,内容如下:#!/bin/bashclearcalechohello!!!2.在Linux下可以用以下方法来执行mynev.chmod命令:#chmod+xmynev3.执行shell程序命令行上:#./mynev说明:以#开始行表示注释变量3种类型:环境变量:系统提供,不用定义,可

8、以修改内部变量:系统提供,不用定义,不能修改用户变量:定义,可以修改与其他语言的区别:非类型性质,也就是不必指定变量是数字或字符串等。查看变量的命令env命令:显示系统中预设环境变量的内容。set命令:显示系统中全部变量的内容,包括用户自定义变量。例:#asdf=123#env

9、grepasdf找不到#set

10、grepasdf能找到用户变量举例这是一个有关shell程序my1的例子:var=”string”newvar=”Valueofvaris$var”echo$newvar执行shell程序my1,可得到如下的结果:Val

11、ueofvarisstring环境变量(注意:变量名大写)echo$PATH指令ls完整文件名为:/bin/ls(这是绝对路径),为什么我在任何目录下输入ls都可以显示呢?这是因为环境变量PATH中的定义!例如[rootwww~]#echo$PATH/usr/kerberos

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。