shell脚本学习总结--李向勇.doc

  1. 1、本文档共52页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1.shell简介 5 2.常见shell 6 2.1bash 6 2.2sh 6 2.3ash 6 2.4csh 7 2.5ksh 7 3.shell与编译型语言的差异 7 3.1编译型语言 7 3.2解释型语言 8 4.shell脚本的编写和运行 8 5.变量 10 5.1定义变量 10 5.2使用变量 11 5.3重新定义变量 11 5.4只读变量 12 1) 局部变量 13 2) 环境变量 13 3) shell变量 13 6.shell特殊变量 13 6.1命令行参数 14 6.2$* 和 $@ 的区别 15 6.3退出状态 15 7.shell替换 16 7.1命令替换 17 7.2变量替换 18 8.shell运算符 20 8.1算术运算符 20 8.2关系运算符 22 8.3布尔运算符 25 9.shell字符串 27 9.1单引号 27 9.2双引号 27 9.3拼接字符串 27 9.4获取字符串长度 28 9.5提取子字符串 28 6.查找子字符串 28 10.shell数组 28 10.1定义数组 28 10.2读取数组 29 10.3获取数组的长度 30 11. if else语句 31 11.1if ... else 语句 31 11.2if ... else ... fi 语句 32 11.3?if ... elif ... fi 语句 33 12.case 语句 35 13. 循环 37 13.1for循环 37 13.2.while 循环 39 13.3until 循环 40 13.4跳出循环 41 14.函数 43 14.1函数参数 45 15.重定向 46 15.1输出重定向 46 15.2输入重定向 47 15.3重定向深入讲解 48 15.4Here Document 49 15.5/dev/null 文件 50 16.文件包含 51 1.shell简介 Shell本身是一个用C语言编写的程序,它是用户使用Unix/Linux的桥梁,用户的大部分工作都是通过Shell完成的。Shell既是一种命令语言,又是一种程序设计语言。作为命令语言,它交互式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。 它虽然不是Unix/Linux系统内核的一部分,但它调用了系统核心的大部分功能来执行程序、建立文件并以并行的方式协调各个程序的运行。因此,对于用户来说,shell是最重要的实用程序,深入了解和熟练掌握shell的特性极其使用方法,是用好Unix/Linux系统的关键。 Shell有两种执行命令的方式: 交互式(Interactive):解释执行用户的命令,用户输入一条命令,Shell就解释执行一条。 批处理(Batch):用户事先写一个Shell脚本(Script),其中有很多条命令,让Shell一次把这些命令执行完,而不必一条一条地敲命令。 Shell脚本和编程语言很相似,也有变量和流程控制语句,但Shell脚本是解释执行的,不需要编译,Shell程序从脚本中一行一行读取并执行这些命令,相当于一个用户把脚本中的命令一行一行敲到Shell提示符下执行。 2.常见shell Unix/Linux上常见的Shell脚本解释器有bash、sh、csh、ksh等,习惯上把它们称作一种Shell。我们常说有多少种Shell,其实说的是Shell脚本解释器。 2.1bash bash是Linux标准默认的shell,本教程也基于bash讲解。bash由Brian Fox和Chet Ramey共同完成,是BourneAgain Shell的缩写,内部命令一共有40个。 Linux使用它作为默认的shell是因为它有诸如以下的特色: 可以使用类似DOS下面的doskey的功能,用方向键查阅和快速输入并修改命令。 自动通过查找匹配的方式给出以某字符串开头的命令。 包含了自身的帮助功能,你只要在提示符下面键入help就可以得到相关的帮助。 2.2sh sh 由Steve Bourne开发,是Bourne Shell的缩写,sh 是Unix 标准默认的shell。 2.3ash ash shell 是由Kenneth Almquist编写的,Linux中占用系统资源最少的一个小shell,它只包含24个内部命令,因而使用起来很不方便。 2.4csh csh 是Linux比较大的内核,它由以William Joy为代表的共计47位作者编成,共有52个内部命令。该shell其实是指向/bin/tcsh这样的一个shell,也就是说,csh其实就是tcsh。 2.5ksh ksh 是Korn shell的缩写,由Eric Gisin编写

文档评论(0)

70后老哥 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档