Linux网络操作系统配置与管理 项目2拓展资源_linux脚本编程浅介.docx

Linux网络操作系统配置与管理 项目2拓展资源_linux脚本编程浅介.docx

ID:52290550

大小:23.38 KB

页数:9页

时间:2020-03-26

Linux网络操作系统配置与管理 项目2拓展资源_linux脚本编程浅介.docx_第1页
Linux网络操作系统配置与管理 项目2拓展资源_linux脚本编程浅介.docx_第2页
Linux网络操作系统配置与管理 项目2拓展资源_linux脚本编程浅介.docx_第3页
Linux网络操作系统配置与管理 项目2拓展资源_linux脚本编程浅介.docx_第4页
Linux网络操作系统配置与管理 项目2拓展资源_linux脚本编程浅介.docx_第5页
资源描述:

《Linux网络操作系统配置与管理 项目2拓展资源_linux脚本编程浅介.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、linux脚本编程(shell)浅介  linux脚本(shell)编程 啊,昨天上网看到一篇讲linux/unixshell的文章,想想自己最后写这东西也是一年前的事了,想想都快忘光了。 还是整理一下,做一次回顾,以后说不定还用得上;帖出来,方便第一次学习这东西的同道中人。 如果发现有错误的地方,请指出,留一句即可,我会感激的。废话少说了!!! linux下最重要的脚本语言算是bash了,我也就写点这个吧(我也只会这个:))。跟其他开发语言(如C)比,bash是比较简单的一种语言,主要用于写一些脚本代码,一些批处理或安装程序。你可以看看在/etc/init.d

2、/目录下,那里就有很多用来控制各个服务的脚本文件。 先看一个“helloworld!”的例子: 在某个目录下新建一个文件,叫hello.sh,敲入以下代码:#!/bin/shecho"helloworld!" 好,就这些。保存,在命令提示符下进入保存“hello.sh”的目录,这样执行: #shhello.sh(回车) 看到了吧?哈哈,不过你高兴的不要太早了,只并不能说明什么,就象你在其他编程环境中做的“helloworld.”一样,离高手的距离还远着呢。 我们先看看bash脚本中变量的使用。 修改上面的“helloworld!”的例子,改成下面的样子:#!/b

3、in/bash#Thisisaverysimpleexamplestr="helloworld!"echo$str 保存后按照上面的方法执行该脚本,你将看到和以前一样的效果。我们看看每一句的意义: 第一行,#!是说明hello.sh这个文件的类型的,有点类似Windows系统下用文件后缀来表示不同文件类型的意思。Linux系统根据"#!"及该字串后面的信息确定该文件的类型。在BASH中第一行的"#!"及后面的"/bin/bash"就表明该文件是一个BASH程序,需要由/bin目录下的bash程序来解释执行。BASH这个程序一般是存放在/bin目录下。这一行的写法

4、是固定的。 第二行的"#Thisisa..."就是BASH程序的注释,在BASH程序中从“#”号(没有“!”号)开始到行尾的部分均被看作是程序的注释,相当于C/C++语言中的“//”。 第三行是为一个名称为str的变量赋值。 第四行的echo语句的功能是把echo后面的字符串或变量的内容输出到标准输出中去。需要注意的是BASH中的绝大多数语句结尾处都没有分号。 对于第三行,可能有人会问:在C/C++中,变量都属于某个类型,在这变量str的类型是什么呢?在BASH中变量定义是不需要的,没有"inti"这样的定义过程。如果想用一个变量,只要他没有在前面被定义过,就直

5、接可以用,当然你使用该变量的第一条语句应该是对他赋初值了,如果你不赋初值也没关系,只不过该变量是空(注意:是NULL,不是0)。 关于变量的使用,要注意以下几点: 一,变量赋值时,“=”左右两边都不能有空格; 二,BASH中的语句结尾不需要分号(";"); 三,除了在变量赋值和在FOR循环语句头中,BASH中的变量使用必须在变量前加"$"符号。 在比较详细的bash文档中,会规定使用变量要采用这样的形式:${STR},如果你的脚本出了莫名其妙的错误,不妨看看是不是这个问题造成的。 BASH中的变量既然不需要定义,也就没有类型一说,那是不是一个变量既可以存放整数,

6、也可以存放字符串呢?对! 一个变量即可以被定义为一个字符串,也可以被再定义为整数。如果对该变量进行整数运算,他就被解释为整数;如果对他进行字符串操作,他就被看作为一个字符串。请看下面的例子:#!/bin/bashx=2006let"x=$x+1"echo$xx="astring."echo$x 执行一下看看? 又出现了新的关键字:let。关于整数变量计算,有如下几种:"+-*/%",他们的意思和字面意思相同,在*和/之前必须冠以反斜线,已防被SHELL先行解释。整数运算一般通过let和expr这两个指令来实现,如对变量x加1可以写作:let"x=$x+1"或者x

7、=`expr$x+1` 关于运行时参数,我们在执行脚本时有时很想传个参数进去,如:#shmysh.shhdz(回车)好,很简单,在bash中,使用这样传进来的变量时也要在前面加“$”符号。$#传入脚本的命令行参数个数;$*所有命令行参数值,在各个参数值之间留有空格;位置变元$0命令本身(shell文件名)$1第一个命令行参数;$2第二个命令行参数;... 好,编辑以下脚本:#!/bin/shecho"numberofvars:"$#echo"valuesofvars:"$*echo"valueofvar1:"$1echo"valueofvar2:"$2echo"

8、valueofvar3:

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

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

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