欢迎来到天天文库
浏览记录
ID:41976065
大小:66.00 KB
页数:4页
时间:2019-09-05
《华工学生带你探秘中兴新支点系统shell编程2》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、华工学生带你探秘中兴新支点系统shell编程(上)无法想象没有shell的Linux会是什么样子,想要成为一名高级的Linux用户,shell编程是必须要掌握的一项技术。本篇文章,小编就将带领大家走进中兴新支点操作系统系统,探秘shell编程。在中兴新支点系统中,写shell脚本不需耍任何编译器,只需要简单的使用文本编辑器即可,非常的方便。木文以屮兴新支点系统屮自带的gedit为例进行介绍。1•写一个自己的程序和许多编程语言的学习一样,我们同样以一个非常简单的程序开启我们的学习过程,透过这个例了,我们
2、可以看到一个基本的shell程序的构成。用gedit建立一个名为CGSL的文件,内容如下:并!/bin/bashecho“Hello,thisisCGSLV4!"执行它之前,我们要先为其加上可执行权限。之后就可以执行,得到结果:[lishuyu@localhostDesktop]$./CGSLHello.thisisCGSLV4!可能大家会对上面的程序代码有些不理解,下面我来为大家解释一下。“#!/bin/bash”用于告诉shell,运行这个脚本应该用哪个shell程序。本例中使用的是/bin/ba
3、sho一般而言,shell程序第一行都以爭!“开头,指定脚本的运行环境,这是一个好的习惯。“echo'Hello,thisisCGSLV4「”这一行用于输出,echo命令把其参数传递给标准输出,一•般来讲也就是显示器。如果参数是字符串,那么应该用双引号把它们包含起来。1•变量的赋值和使用下面是一个简单的程序,这个程序用一个字符串给变量赋值,并在将其输出。#!/bin/bashsystem="CGSL"echo"Thenameofoursystemis:echo$system运行结果如下:[lishuy
4、u^localhostDesktop]$chmod+xsystem[lishuyu(aiocalhostDesktop]$./systemThenameofoursystemis:CGSL在shell中使用变量不需耍事先进行芦明。使用鼻”给一个变量赋值即可,例如:system=CGSL,这条语句将CGSL赋给system□在BASH中,“$”用于对—•个变量进行解析,shell在碰到带有“$”的变量吋会自动将其解析替换为这个变量的值。2•变量替换询面提到,翔”用于解析变量。但如果想单纯的输出这个符号,
5、就需要加上转移字符十,让shell忽略特殊字符的特殊含义。[lishuyu@localhostDesktop]$system="CGSLw[lishuyu@localhostDesktop]$echo"Thevalueof$systemisSsystem11ThevalueofSsystemisCGSL1■位置变量Shell脚本通过位置变量来保存参数。当脚木启动时必须知道传递给自己的参数都有哪些。传递给shell脚本的参数存放在”$+数字“的变量中,也就是说,第一个参数存放在$1,第二个参数存放在$
6、2,依次类推……当参数数量超出10个时,就需要用花括号将数字括起来,如${15}……比较特殊的是,位置变量$0用于存放脚木木身的名字。卜•血我们看一个具体的例了,这个脚木用于显示传递给它的参数:#!/bin/bashecho"$0=*$0*"echo"$1=*$1*"echo“$2=*$2*Mecho"$3=运行结果如下:[lishuyu@local.hostDesktop]$chmod+xcanshu[lishuyutatocalhostDesktop]$./canshu1st2nd$Q=♦
7、./canshu*$1=*lst*$2=♦2nd*$3=♦♦可以看到,$0保存了脚本名,$1保存了第一个参数,$2保存了第二个参数,因为没有第三个参数,所以$3为空值。2•引号规则在shell中可以使用的引号有以F3种:双引号:阻止shell对大多数特殊字符(例如#)进行解释,但和”””仍然会被解释。单引号:组织shell对一切字符的解释。倒引号:这个符号通常位于键盘上数字1的左边。当用其括起一个shell命令时,这个命令会被执行,执行后的输出结果将作为这个表达式的值。我们用下面的例子来具体的看一下它
8、们Z间的异同:#!/bin/bashdate=Thursdayecho"Todayis$date."echo'Todayis$date.'Iecho”Todayisdate.结果如下:[lishuyu(aiocalhostDesktop]$chmod+xdate[lishuyu@localhostDesktop]$./dateTodayisThursday.Todayis$date.Todayis2016年04月220星期五11:15:03CST.可以看
此文档下载收益归作者所有