Shell学习笔记分析.docxVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Shell学习笔记分析

好后悔在学校里,没有充分利用时间。一些基础知识、基础技能都没有涉及到。现在用到了,才感慨万千。希望从现在开始study,还来得及。好的,既然觉悟了,那就从Shell基础开始吧。1、Shell简介①、Shell既是一种命令语言,又是一种程序设计语言。作为命令语言,它交互式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。②、Shell有两种执行命令的方式:交互式(Interactive):解释执行用户的命令,用户输入一条命令,Shell就解释执行一条。批处理(Batch):用户事先写一个Shell脚本(Script),其中有很多条命令,让Shell一次把这些命令执行完,而不必一条一条地敲命令。2、Shell的种类Shell脚本解释器有bash、sh、csh、ksh等。bash是Linux标准默认的shell。bash由BrianFox和ChetRamey共同完成,是BourneAgainShell的缩写,内部命令一共有40个。3、编译型语言和解释性语言编译型语言:C、C++、java等。预先将我们写好的源代码(sourcecode)转换成目标代码(objectcode),这个过程被称作“编译”。目标代码接近计算机底层,故执行效率高。解释性语言:awk、Perl、Python、Ruby与Shell,也被称为脚本语言。执行这类程序时,解释器(interpreter)需要读取我们编写的源代码(sourcecode),并将其转换成目标代码(objectcode),再由计算机运行。因为每次执行程序都多了编译的过程,因此效率有所下降。4、Shell的优点:简单性:Shell是一个高级语言;通过它,你可以简洁地表达复杂的操作。可移植性:使用POSIX所定义的功能,可以做到脚本无须修改就可在不同的系统上执行。开发容易:可以在短时间内完成一个功能强大又妤用的脚本。5、Shell注释新建一个文件,扩展名为sh(sh代表shell),扩展名并不影响脚本执行,见名知意就好,如果你用php写shell脚本,扩展名就用php。Shell注释:以“#”开头的行就是注释,会被解释器忽略。sh里没有多行注释,只能每一行加一个#号。如果在开发过程中,遇到大段的代码需要临时注释起来,过一会儿又取消注释,怎么办呢?每一行加个#符号太费力了,可以把这一段要注释的代码用一对花括号括起来,定义成一个函数,没有地方调用这个函数,这块代码就不会执行,达到了和注释一样的效果。6、Shell的运行方式#!/bin/bash ---“#!”是一个约定的标记,它告诉系统这个脚本需要什么解释器来执行,即使用哪一种Shell。echoHelloWorld!---echo命令用于向窗口输出文本。运行脚本有两种方式:作为可执行程序:chmod+x./test.sh#使脚本具有执行权限,“./”表示在当前目录找。./test.sh#执行脚本注意,一定要写成./test.sh,而不是test.sh。运行其它二进制的程序也一样,直接写test.sh,linux系统会去PATH里寻找有没有叫test.sh的,而只有/bin,/sbin,/usr/bin,/usr/sbin等在PATH里,你的当前目录通常不在PATH里,所以写成test.sh是会找不到命令的,要用./test.sh告诉系统说,就在当前目录找。作为解释器参数:这种运行方式是,直接运行解释器,其参数就是shell脚本的文件名,如:/bin/shtest.sh这种方式运行的脚本,不需要在第一行指定解释器信息,写了也与前面的没关系。7、Shell变量自定义变量:1、your_name=mozhiyan----变量名和等号之间不能有空格2、echo$your_name-----“$”表示使用变量3、echo${your_name}----推荐使用--2、3是一个意思。变量名外面的花括号是可选的,加不加都行,加花括号是为了帮助解释器识别变量的边界只读变量:将变量定义为只读变量,只读变量的值不能被改变readonlyyour_name删除变量:删除的是变量的值。变量将没有任何输出。unsetvariable_name变量类型运行shell时,会同时存在三种变量:1)局部变量:局部变量在脚本或命令中定义,仅在当前shell实例中有效,其他shell启动的程序不能访问局部变量。2)环境变量:所有的程序,包括shell启动的程序,都能访问环境变量,有些程序需要环境变量来保证其正常运行。必要的时候shell脚本也可以定义环境变量。3)shell变量:shell变量是由shell程序设置的特殊变量。shell变量中有一部分是环境变量,有一部分是局部变量,这些变量保证了

文档评论(0)

1520520 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档