第7章-shell程序设计

第7章-shell程序设计

ID:25108501

大小:461.50 KB

页数:50页

时间:2018-11-18

第7章-shell程序设计_第1页
第7章-shell程序设计_第2页
第7章-shell程序设计_第3页
第7章-shell程序设计_第4页
第7章-shell程序设计_第5页
资源描述:

《第7章-shell程序设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、第7章shell程序设计把命令有机地组合在一起,形成功能强大、使用灵活,但代码简单的新命令,极大地提高了用户管理使用Unix/Linux系统的工作效率。其它shell与Bash版本的shell也十分类似,读者可以举一反三,根据需要自学其他的shell。7.1shell脚本shell命令非常有效,但是功能有限把命令有机地组合在一起,形成功能强大、使用灵活,但代码简单的新命令,极大地提高了用户管理使用Unix/Linux系统的工作效率。Monday,August30,20217.2shell脚本主要内容

2、shell的作用shell程序的编辑和运行基于Bash的shell程序设计变量声明表达式条件判断控制结构函数shell脚本的建立与执行shell脚本的建立同建立普通文本文件的方式相同,可利用编辑器vi或cat命令,进行程序录入和编辑加工。shell脚本的执行sh脚本名:将参数值传递给程序中的命令,从而使一个脚本可以处理多种情况。sh<脚本名:用输入重定向方式让Shell从给定文件中读入命令行并进行相应的处理。改执行权限后直接执行方式chmoda+x文件名./文件名7.2.1shell脚本基本结构一个

3、例子#!/bin/bash#filename:helloecho-n"Pleaseinputyourname:“readansecho"Hello$ans,welcometoHangzhou."Monday,August30,20217.2.2变量的声明变量的声明和使用变量是弱类型的声明变量不用声明类型可以存储不同类型的内容使用灵活使用时要明确变量的类型大小写区分用户自定义变量在shell编程语言中无须声明和初始化shell变量,一个未初始化的shell变量,其默认的初始化值为空字符串。用户定义的s

4、hell变量名是由字母或下线符打头的字母、数字和下线符序列,并且大小写字母意义不同。这与C语言中标识符的定义相同。定义变量并赋值的形式字符串赋值,格式如下:变量名=字符串mydir=/home/a(注意:等号两边没有空格)如果在赋给变量的值中要含有空格、制表符或换行符,那么就应该用双引号把这个字符串括起来。myname=“zhangsan”变量值可以作为某个长字符串中的一部分。如果它在长字符串的末尾,就可以利用直接引用形式。s1=ingEchowalk$s1orread$s1orsleep$s1wa

5、lkingorreadingorsleeping查看变量使用变量用env命令可以查看环境变量用不带参数的set命令可以显示所有“shell变量(包括用户自定义变量)名以及它们的当前值。set命令还可用于改变一些只读shell环境变量的值。在程序中使用变量值时,要在变量名前面加上一个符号“$”。这个符号告诉shell,要取出其后变量的值。Monday,August30,2021变量的声明和使用变量的引用格式: $变量名,或者${变量名}例1:$str=′Thisisastring′$echo″${st

6、r}enttestofvariables”Thisisastringenttestofvariables$echo″$strenttestofvariables″testofvariablesMonday,August30,2021变量的声明和使用例2:$myhome=/usr/app1$echo$myhome/usr/app1$ls-x$myhomefile1file2file3file4例3:$dir=/usr/meng/ff$echo$dir/usr/meng/ff$echodirdir7.2

7、.3shell中的特殊字符特殊字符有着重要的作用。包括:通配符引号命令执行顺序操作符注释符、反斜线及后台操作符在使用时应注意它们表示的意义和作用范围。shell的通配符星号(*)问号(?)一对方括号([])感叹号(!)如果紧跟在一对方括号之后,则表示不包括方括号所列出的字符。shell的引号双引号(“”)双引号引起来的字符,除了$,倒引号,反斜线仍保留其功能外,其余的做普通字符对待。例$echo“mycurrentdirectoryis`pwd`”mycurrentdirectoryis/home/

8、wdg单引号(‘’)由单引号括起来的字符都当普通字符出现例$echo‘mycurrentdirectoryis`pwd`’mycurrentdirectoryis`pwd`倒引号(``)Shell解释执行例:$echocurrentdirectoryis`pwd`currentdirectoryis/home/wdg倒引号的嵌套应用,倒引号的嵌套时必须在内层的一组倒引号用反斜线进行转义。$mypath=`echomydirectoryis`pwd``$echo$

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。