- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
linux+shell脚本语言基础知识.doc
linux shell脚本语言基础知识 一.shell简介 Linux系统的shell作为操作系统的外壳,为用户提供使用操作系统的界面,更确切的说,shell是用户与Linux操作系统沟通的桥梁。用户既可以输入命令执行,又可以利用 Shell脚本编程,完成更加复杂的操作。 shell是一个命令解释器,它从输入设备读取命令,再将其转为计算机可以了解的指令,然后执行它。在linux中,shell又不仅是简单的命令解释器,而且是一个全功能的编程环境。 Linux的Shell种类众多,常见的有:Bourne Shell(/usr/bin/sh或/bin/sh)、Bourne Again Shell(/bin/bash)、C Shell(/usr/bin/csh)、K Shell(/usr/bin/ksh)、Shell for Root(/sbin/sh),等等。不同的Shell语言的语法有所不同,所以不能交换使用。每种Shell都有其特色之处,基本上,掌握其中任何一种就足够了。通常用Bash,也就是Bourne Again Shell进行编程。 二.shell使用 1.建立和运行shell程序 shell脚本程序:按照一定的语法结构把若干linux命令组织在一起,是这些命令按照我们的要求完成一定的功能。它可以进行类似程序的编写,并且不需要编译就能执行。(只需修改其权限) 像编写高级语言的程序一样,编写shell程序需要一个文本编辑器,如VI和VIM,通常使用VIM文本编辑器,支持更便利的插入模式。 首先使用VIM编辑器编辑一个hello.sh文件: #!/bin/bash #hello world example echo hello world 这样,一个最简单的shell程序就编写完了。 第一行:#!说明hello.sh这个文件的类型的,这有点类似于Windows系统下的用不同的文件后缀来表示不同的文件类型,但又不完全相同。Linux系统根据#!及该字符串后面的信息确定该文件的类型。在#!之后是一个路径名,这个路径名指定了一个解释脚本中命令的程序。 第二行:“#hello world example”就是shell程序的注释,(但后面紧接着“!”号的除外) 第三行:echo(回显)语句的功能是把echo后面的字符串输出到标准输出中。 现在,建立和写好之后,那么该程序如何运行呢? 由于该脚本没有执行的权限,只需要修改其执行的权限即可,执行:chmod a+x hello.sh。然后输入命令:./hello.sh即可看到效果。 2.shell变量 变量是一个存储值的实体,可以是一个名字,或者一个特殊的值。shell可以创建,分配和删除变量。 (1)变量设置规则: a.变量与变量内容以等号(=)来连接 b.等号两边不能直接接空格符 c.变量名称只能是英文字母与数字或下划线,但是数字不能是开头符 d.引用变量名用“$变量名” #!/bin/bash #hello world example a=hello world echo $a 以上例子一样可以输出hello world。 e.若有空格符可以使用双引号或单引号将变量内容结合起来,但必须注意,双引号的特殊字符可以保有变量的特性,但是单引号内的特殊字符则仅为一般字符。 #name=$LOGNAME is hh //root is hh #name=$LOGNAME is hh //$LOGNAME is hh f.通常大写字符为系统预设变量,自行设定的变量可以使用小写字符 (2)取消变量:用unset 变量名 #!/bin/bash #hello world 例子 a=hello world unset a echo $a 以上例子将不会打印出任何东西。 3.shell特殊变量 $0 :执行的脚本的文件名 $1 :脚本文件的第一个参数名 $# :传递到脚本的参数个数 $* :以一个单字符串显示所有向脚本传递的参数 $$ :脚本运行的当前进程ID号 $? :显示最后命令的退出状态,0表示没有错误,其它值表示有错误 例子a.sh #!/bin/bash echo the file is $0 echo the parameter is $1 $2 echo number of parameter is $# echo all parameter is $* echo $? 加权限后执行./a.sh hh mm gg 则打印 the file is ./a.sh the parameter is hh mm number of parameter is 3
您可能关注的文档
- JAVA课程设计-银行存取管理系统(所有代码).doc
- java课设最终.doc
- java高精度使用.doc
- jb0648 【6500字】浅谈中学生参加柔道训练对意志品质和身体素质的影响 11.15日交.doc
- jccad笔记10版-未修改.doc
- JCG-33.设备及相关服务采购合同(设备两方外贸)(营改增广东版).doc
- JCG-35.设备及相关服务采购合同(设备三方外贸)(营改增广东版).doc
- JCG-37.设备及相关服务采购合同(关联交易设备三方外贸)(营改增广东版).doc
- JCG-38.设备及相关服务采购框架协议(加订单)(营改增广东版).doc
- JCG-44.购销合同(涉及安装、保修和技术服务的非通信产品采购)(营改增广东版).doc
文档评论(0)