linux课程资源Shell脚本基础课件

上传人:494895****12427 文档编号:252849632 上传时间:2024-11-20 格式:PPT 页数:21 大小:930.28KB
收藏 版权申诉 举报 下载
linux课程资源Shell脚本基础课件_第1页
第1页 / 共21页
linux课程资源Shell脚本基础课件_第2页
第2页 / 共21页
linux课程资源Shell脚本基础课件_第3页
第3页 / 共21页
资源描述:

《linux课程资源Shell脚本基础课件》由会员分享,可在线阅读,更多相关《linux课程资源Shell脚本基础课件(21页珍藏版)》请在装配图网上搜索。

1、Network Optimization Expert Team,Network Optimization Expert Team,Linux,模块,2,LINUX,进阶,-,系统管理,主讲人:芮坤坤,2.5 Linux,进程及作业管理,Linux Shell,脚本基础,Bash Shell,基础,正则表达式,高级文本处理命令,Shell,脚本,2.5.1 Bash Shell,基础,Shell,也是,Unix/Linux,最重要的软件之一,,Shell,提供了用户与操作系统之间通讯的方式。这种通讯可以以交互方式,也可以,Shell,脚本(非交互)方式执行。,Shell,脚本是存放在文件中的一

2、串,Shell,和操作系统命令,,Shell,脚本可以被重复使用,常见的,Shell,Bourne Shell,是由,Steven Bourne,编写的,是,Unix,的默认的,Shell,。,Bourne Shell,的,Shell,编程能力很强。但不能处理基于命令的用户交互模式。,bash Shell,是,Bourne Shell,的增强版,C shell,是由加利福尼亚大学伯克利分校的,Bill Joy,编写,能提供,Bourne Shell,所不能处理的用户交互模式,比如命令补全、命令别名、历史命令替换等等。,C Shell,的编程能力不如,Bourne shell,,但其语法和,C,

3、语言类似,所以,C,程序员将发现,C Shell,很顺手,Korn Shell,是由,Dave Korn,编写的。,Korn shell,融合了,C Shell,和,Bourne Shell,的优点,并和,Bourne shell,完全兼容。,Korn shell,的效率很高,其命令交互界面和编程交互界面都很不错,bash Shell,命令列表,使用分号隔开,使用,&,条件隔开,使用,|,条件隔开,rootsrv#cd/boot;ll,rootsrv#service atd restart&chkconfig atd on,rootsrv#cd/bot|mkdir/bot,bash Shell

4、,在子,Shell,中运行命令,命令别名,命令替换,大括号替换,变量替换,算术替换,命令替换,rootsrv#(cd/boot;ll),rootsrv#alias h=head,rootsrv#mkdir-p 24/Season1,2,3,4,5,6,7,8,rootsrv#echo$($PRICE*NUMBER),rootsrv#mkdir reports.$(date+%d%b%y),标准输入,/,输出,在,Linux,系统中,输入流被称做标准输入(,STDIN,,文件编号,0,);输出流有二种,标准输出(,STDOUT,,文件编号,1,)、标准错误(,STDERR,,文件编号,2,),标

5、准输出是终端程序执行后输出的正确结果,标准输入,/,输出,标准输出重定向,使用“,”,将输出写入文件,如果指定的文件已存在将会删除文件中原有的内容,使用“,”,将输出追加到文件,如果指定的文件已存在将会把输出附加到文件中,标准错误重定向,使用“,2”,将输出写入文件,如果指定的文件已存在将会删除文件中原有的内容,使用“,2”,将输出追加到文件,如果指定的文件已存在将会把输出附加到文件中,标准输入重定向,bash Shell,可以使用“,”,将命令中接收标准输入的途径由默认的键盘改为指定的文件,管道,管道功能只需在前一个命令和后一个命令中间使用“,|”,分隔,这样前一个命令的输出就会成为后一个命

6、令的输入,rootsrv#netstat-tunlp|grep httpd,rootsrv#grep-v#/boot/grub/grub.conf|grep-v$,rootsrv#ll|head-n 10|tail-n 3,2.5.2,正则表达式,正则表达式,又称正规表示法、常规表示法,计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。在很多文本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的文本。,正则表达式,正则表达式应用,实例应用,1.,验证用户名和密码:(,a-zA-Zw5,15$,)正确格式:,A-Za-z_0-9,组成,并且第一个字

7、必须为字母,616,位;,2.,验证电话号码:(,(d3,4-)d7,8$,)正确格式:,xxx/xxxx-xxxxxxx/xxxxxxxx,;,3.,验证手机号码:,13|4|5|7|80-9d8$,;,4.,验证身份证号(,15,位或,18,位数字):,d140-9,0-9xX,;,5.,验证,Email,地址:,(w+(-+.w+)*w+(-.w+)*.w+(-.w+)*$),;,6.,只能输入由数字和,26,个英文字母组成的字符串:,(A-Za-z0-9+$);,7.,整数或者小数:,0-9+(.0-9+)0,1$,2.5.3,高级文本处理命令,sort,命令的功能是对文件中的各行进行

8、排序。,语法:,sort,选项,文件,说明:,sort,命令对指定文件中所有的行进行排序,并将结果显示在标准输出上。如不指定输入文件或使用“,-”,,则表示排序内容来自标准输入。,sort,排序是根据从输入行抽取的一个或多个关键字进行比较来完成的。排序关键字定义了用来排序的最小的字符序列。缺省情况下以整行为关键字按,ASCII,字符顺序进行排序。,-m,若给定文件已排好序,合并文件。,-c,检查给定文件是否已排好序,如果它们没有都排好序,则打印一个出错信息,并以状态值,1,退出。,-u,对排序后认为相同的行只留其中一行。,-o,输出文件 将排序输出写到输出文件中而不是标准输出,如果输出文件是输

9、入文件之一,,sort,先将该文件的内容写入一个临时文件,然后再排序和写输出结果。,改变缺省排序规则的选项主要有:,-d,按字典顺序排序,比较时仅字母、数字、空格和制表符有意义。,-f,将小写字母与大写字母同等对待。,-I,忽略非打印字符。,-M,作为月份比较:“,JAN”,-r,按逆序输出排序结果。,2.5.4 Shell,脚本,Shell,脚本并不是一个复杂的程序语言,其按行解释的。,虽然在,Linux,中扩展名并没有实际的作用但一般为了方便阅读,,bash Shell,的脚本文件一般使用“,sh”,作为扩展名。,一行中“,#”,之后的内容表示是注释,注释在执行过程中将被忽略。,在,She

10、ll,脚本文件的第一行应该指定向哪个解释器发送指令,目前在,RHEL5,中默认使用,bash Shell,,所以第一行应该是“,#!/bin/sh”,。,在执行已编写好的脚本时可以使用二种方式:对于有执行权限的脚本文件可以使用“,./”,的方式执行;对于没有执行权限的脚本文件可以使用“,sh”,的方式执行。,Linux,系统中每个进程都是有寿命的,Shell,脚本,变量,局部变量,环境变量,rootsrv#strA=ctu,rootsrv#strB=dod,rootsrv#echo$strA,rootsrv#export strA,Shell,脚本,向脚本传递参数,在脚本中可以使用“,$1”,

11、接受传递给脚本的第一个参数、使用“,$2”,接受传递给脚本的第二个参数,除了可以获得每个参数值以外,还可以使用“,$*”,接受所有的参数、使用“,$0”,获取当前脚本的名称、使用“,$#”,获取传递给脚本的参数个数、使用“,$”,获取当前脚本运行的,PID,rootsrv#cat sh2.sh,#!/bin/sh,echo Script Name Is:$0,echo First Variable:$1,echo Second Variable:$2,echo Tertiary Variable:$3,echo All Variable:$*,Shell,脚本,条件测试,字符串测试,数值测试,

12、文件状态测试,逻辑操作符,Shell,脚本,判断结构,if;then,#,当条件为真时执行的内容,fi,if;then,#,当条件为真时执行的内容,else,#,当条件为假时执行的内容,fi,if;then,#,当条件,1,为真时执行的内容,elif;then,#,当条件,2,为真时执行的内容,else,#,当条件,1,和条件,2,为假时执行的内容,fi,Shell,脚本,多选择语句,case,值,in,模式,1),#,当符合模式,1,时执行的内容,;,模式,2),#,当符合模式,2,时执行的内容,;,.,;,esac,Shell,脚本,循环结构,while,条件,do,循环体,done,until,条件,do,循环体,done,for (,初始值,;,限制值,;,步长,),do,循环体,done,for var in con1 con2 con3,do,循环体,done,Shell,脚本,循环结构,while,条件,do,循环体,done,until,条件,do,循环体,done,for (,初始值,;,限制值,;,步长,),do,循环体,done,for var in con1 con2 con3,do,循环体,done,

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

相关资源

更多
正为您匹配相似的精品文档
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  sobing.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!