Linux 操作系统chap4.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《Linux 操作系统chap4.ppt》由会员分享,可在线阅读,更多相关《Linux 操作系统chap4.ppt(47页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第四章shell程序设计4.1shell概述命令解释程序高级程序设计语言第一个bash程序n#!/bin/bash#这个程序将打印“HelloWorld”到屏幕上echoHelloWorldn$chmodu+x./hello.shn$./hello.sh更有用的程序n$mkdirtrash$mv*trash$rm-rftrash$mkdirtrashn#!/bin/bashmkdirtrashmv*trashrm-rftrashmkdirtrashechoDeletedallfiles!注释n以“#”开头n第一行(“#!/bin/bash”)除外4.2shell变量n所有变量的取值都是一个字符
2、串n可以现定义、现赋值n例子:#!/bin/bashx=12echoThevalueofvariablexis$x使用shell变量nshell变量的变量名是以字母或下划线开头的字母、数字和下划线的字符序列,字母区分大小写。n定义变量并赋值的一般形式是:变量名=变量值n用$var的形式来引用名为var的变量的值两种shell变量n环境变量:永久性变量,其值不会随shell程序执行结束而消失。n本地变量:在shell程序内部定义的,其使用范围仅限于定义它的程序,出了程序就不能再用使用shell变量(深入)n设置一个变量只读:readonly变量名n将一局部变量提供给shell执行的其他命令使用:
3、export变量名4.3控制性结构nif语句nwhile语句nuntil语句nfor语句ncase语句4.3.1 if语句n基本格式是:if 命令then命令组1else命令组2fi例子n#!/bin/bashif test-f/etc/foothen#文件存在,则拷贝文件然后打印出一个信息cp/etc/foo.echo Done.else#文件不存在,则打印出一个信息然后离开echo This file does not exist.exitfitest命令n-d检查此file是否是一个目录-e检查此file是否存在-f检查此file是否为一般的文件-g检查此file是否有SGID权限-r检
4、查此file是否可以读取-s检查此file大小是否不为0-u检查此file是否有SUID权限-w 检查此file是否可以写入-x检查此file是否可以执行test的另外写法nif test-f/etc/foothennif -f/etc/foo;then4.3.2 while语句n语法格式while 命令do命令组 done例子n#!/bin/bashwhile true;do#while:;doecho“Press CTRL-C to quit.”donen#!/bin/bashx=0;#设定 x 初值为 0while$x-le 10;doecho Current value of x:$x
5、#增加 x 的数值:x=$(expr$x+1)sleep 1done检查条件n检查在数值之间的比较:x-eq y检查x和y是否相等x-ne y检查x和y是否不相等x-gt y检查x是否大于yx-lt y检查x是否小于yn检查在字符串之间的比较:x=y检查x与y是否相同x!=y检查x与y是否不相同-n x若x不是空字符串(null)则为真-z x若x是空字符串(null)则为真4.3.3 until语句n命令格式until 命令do命令组 done例子n#!/bin/bashx=0until$x-ge 10;doecho Current value of x:$xx=$(expr$x+1)sle
6、ep 1done4.3.4 for语句nfor语句的结构是:for 变量 in 参数1 参数2 参数ndo命令组 done例子n#!/bin/bashecho-n“Checking system for errors”for dots in 1 2 3 4 5 6 7 8 9 10;doecho-n“.”echo“System clean.”donen#!/bin/bashfor x in paper pencil pen;doecho“The value of variable x is:$x”sleep 1done更实用的例子n要求:给当前目录里的所有文件加后缀名“.html”#!/bin
7、/bashfor file in*;doecho“Adding.html extension to$file.”mv$file$file.htmlsleep 1done4.3.5 case语句n语法格式:case 变量 in模式 1)命令组1;模式 2)命令组2;模式 n)命令组nnesac例子n#!/bin/bashx=5#设定 x 初值为5#现在检查 x 的数值:case$x in0)echo“Value of x is 0.”;5)echo“Value of x is 5.”;9)echo“Value of x is 9.”;*)echo“Unrecognized value.”esac
8、4.4 引 号n双引号(double quote)”n单引号(forward quote)n反单引号(back quote)双引号n$mkdir hello world$mkdir“hello world”单引号n例:#!/bin/bashx=5#设定 x 初值为 5#使用双引号echo“Using double quotes,the value of x is:$x”#使用单引号echo Using forward quotes,the value of x is:$x反单引号n例:x=$(expr$x+1)x=expr$x+14.5 算 术 运 算nexpr命令n$(.)n例子:#!/bi
9、n/bashx=8#设定x初值为8y=4#设定y初值为4#现在我们将x和y的总合之值设定到z:z=$($x+$y)echo“The sum of$x+$y is$z”其它运算n 运 算 运算符Addition/加 +Subtraction/减-Multiplication/乘*Division/除 /Modulus/取余%4.6 读取使用者输入nread命令n例子:#!/bin/bash#取得到使用者的名字,打印出问候语echo-n“Enter your name:”read user_nameecho“Hello$user_name!”4.7 函 数n#!/bin/bash#函数 hello
10、()只是打印出一个信息hello()echo“You are in function hello()”echo“Calling function hello().”#调用 hello()函数:helloecho“You are now out of function hello()”4.8 TRAPPINGntrap使用下列的语法:trap action signaln信号量1)SIGHUP2)SIGINT(ctrl+c)3)SIGQUIT(Ctrl+)9)SIGKILL(kill)15)SIGTERM(shutdown)Signal Value Action Comment -SIGHUP
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Linux 操作系统chap4 操作系统 chap4
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内