linux_shell_脚本编写

linux_shell_脚本编写

ID:36202024

大小:725.50 KB

页数:61页

时间:2019-05-07

linux_shell_脚本编写_第1页
linux_shell_脚本编写_第2页
linux_shell_脚本编写_第3页
linux_shell_脚本编写_第4页
linux_shell_脚本编写_第5页
资源描述:

《linux_shell_脚本编写》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、LinuxShell脚本的编写VimanualShell脚本的概念Shell脚本的概念在Linux下,Shell脚本广泛用于系统管理和软件开发.是Linux系统管理员和开发人员必备知识之一.bash或称BourneAgainshell:标准的GNUshell,直观而又灵活。或是初学者的最明智选择同时对高级和专业用户来说也是一个强有力的工具在Linux上,bash是普通用户的标准shell这个shell因此称为Bourneshell的超集,一套附件和插件。意味bash和sh是兼容的:在sh中可以工作的命令,在bash中也能工作,反之则不然本教程所有的例子均使用Bash用cat/etc/

2、shells可以显示系统安装的ShellShell脚本的概念LinuxShell脚本是多个Linux命令的集合,是一个具有执行权限的文本文件Shell脚本是一个写入系列命令文本文件里,可以一次性执行的可执行文件Linux大量采用Shell脚本来完成重复性或系统维护工作Shell脚本类似于Windows的批处理文件(*.bat)但是功能远强于它.可以用vi创建脚本,也可以用其它文本工具创建后上传到Linux.在Windows下可以UltraEdit保存成Unix文本格式BashShell脚本与CShell脚本语法有差别,本教程主要采用BashShell语法.Shell脚本必须有执行权限

3、Shell脚本格式Shell脚本必须为Unix文本文件Shell脚本的第一句必须指定解释的Shell通常固定为#!/bin/shShell中,以井号(#)开始一个注释行,#号及其后面跟随的同一行的所有内容都被忽略脚本必须有可执行权限chmodu+xmyscript由所有者执行chmoda+xmyscript同组加上可执行权限chmod777myscript全部用户加上可执行权限$,*,’,是脚本保留字符,如果需要作为显示字符,则需要在前面加入转义字符,如\,*,$,’Shell变量Shell变量Shell可以使用变量,对Shell而且,所有变量值都是字符串类型Shell变

4、量,分为三大类:系统变量,环境变量,用户自定义变量所有变量不需要自定义可以直接使用系统变量是指BashShell内部定义的保留变量,环境变量可以看成是在整个Shell的各个程序都能访问的全局变量用户自定义变量由用户自行定义.定义格式为变量名=值,等号两边不能有空格,引用时用$myvar=“Hello,world”#定义一个变量myvar=“hello”#错误定义,等号两边带了空格变量的引用和显示变量通过$来引用值A=“123”$A的值就是”123”,并且在运行中可以改变变量值的显示主要通过echo命令A=100;echo$A在LinuxShell脚本里,字符串‘’和””表示不同的含义

5、,最大区别就是在于对变量引用的处理.单引号‘’包括之中表示字符串,如果字符串包含保留字符,则保留字符失效,按原样输出x=5;echo‘x=$x’输出x=$x双引号“”包括之中表示字符串,如果字符串包含保留字符,则保留字符生效,如变量要显示变量值x=5;echo“x=$x”输出x=5变量引用实例#!/bin/shmyvar="Hello,world"echo1=$myvarecho2="$myvar"echo3='$myvar'echo4=$myvarecho5='$myvar'echo6="'$myvar'"echo7='"$myvar"'echo8="$myvar"执行脚

6、本注意当前路径不在环境变量PATH当中。换句话在当前目录执行某一个程序(如a.sh),必须要加../a.sh这样主要出于安全考虑变量名保护在shell中,由于书写比较随意,很容易造成变量名引写错情况.由于Shell不需要变量定义,所以非常容易出错.var1书写成$var1hello,这样形成新的变量Shell可以用{}来保护变量的引用var1=hello;echo${var1}hello变量值的赋值shell变量不需定义即可使用,这样对变量值初始值就有一些问题,Shell提供一些简单的判断或初始化机Var=value变量赋值${variable:-value}空值置换如果变量已经赋值

7、,则使用该变量值。如果变量为空,则整个引用值使用value。需要注意的是,value并不赋给variable。var3=11;echo${var3:-12}类似于C语言的var3==NULL?12:var3表达echo${var3:-12}${variable:=value}空值赋值该表达式上面的区别就是,如果variable为空,则value赋给variable。echo${var4:=12};echo$var4${variable:?}空值出错检验变量

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

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

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