linux脚本.ppt

linux脚本.ppt

ID:49262520

大小:467.00 KB

页数:27页

时间:2020-02-02

linux脚本.ppt_第1页
linux脚本.ppt_第2页
linux脚本.ppt_第3页
linux脚本.ppt_第4页
linux脚本.ppt_第5页
资源描述:

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

1、Linuxshell脚本概念无需编译,解释执行文本文件形式存在强大的正则表达式操作运行速度慢数据类型支持少用于系统管理和文件操作Page/28脚本运行编写脚本程序改变脚本程序文件的权限为可执行运行脚本程序#./脚本程序#bash脚本程序#../脚本程序#exec脚本程序Page/28基本脚本编程变量条件测试流程控制Page/28环境变量使用set命令查看环境变量set常用环境变量USERUIDSHELLHOMEPWDPATHPS1PS2环境变量配置文件/etc/bashrc/etc/profile~/.

2、bash_profile~/.bashrcPage/28位置变量$./exam01onetwotreefourfivesix$0表示命令名称$0属于预定义变量$0不属于位置变量$1表示第1个命令参数$2表示第2个命令参数$3表示第3个命令参数$n表示第n个命令参数Page/28预定义变量变量名含义$#表示位置参数的数量$*表示所有位置参数的内容$?表示命令执行后返回的状态,用于检查上一个命令的执行是否正确;在Linux中,命令退出状态为0表示命令正确执行,任何非0值表示命令执行错误$$表示当前进程的进程

3、号$!表示后台运行的最后一个进程号$0表示当前执行的进程名Page/28用户自定义变量自定义变量的设置$DAY=sunday自定义变量的查看与引用$echo$DAY自定义变量的输出$exportDAY自定义变量的清除$unsetDAYPage/28脚本第一行必须指出用哪个程序来执行脚本,内核根据它来确定用哪个程序来翻译脚本中的行.如:#!/bin/bash注释,以“#”开头的文字描述.可执行语句与bashshell结构例:vifirstscript#!/bin/bash#firstscriptecho“

4、Helloworld!”Page/28条件测试使用test命令语法:使用括号[]语法:条件表达式的值为真返回零,为假时返回非零值mantest(显示测试表达示的写法)test条件表达式[条件表达式]Page/28条件测试篇文件状态测试-d目录-r可读-f常规文件-w可写-L符号连接-x可执行-s文件长度大于0,非空-u文件有suid位设置示例:[-shaison.c]0表示成功,其他为失败,下同。逻辑操作符-a逻辑与(and),操作符两边均为真,结果为真,否则为假。-o逻辑或(or),操作符两边一边为真

5、,结果为真,否则为假。!逻辑否,条件为假,结果为真,反之。示例:[-rhaison.c–a–whai.c][-rbaison.c]&&[-wbai.c]Page/28条件测试篇字符串测试=两个字符串相等-z空串!=两个字符串不相等-n非空串示例:[-z$SHELL]数值测试-eq数值相等(equalto)-lt第一个数小于第二个数(lessthan)-ne数值不相等(notequalto)-le第一个数小于等于第二个数-gt第一个数大于第二个数(greaterthan)-ge第一个数大于等于第二个数示例

6、:[“10”-eq“12”]Page/28控制结构篇选择结构循环结构if语句:ifthenelse提供条件测试case语句:允许匹配模式、单词或值for:每次依次处理列表内的信息,直至循环耗尽。until:不常用。条件在循环末尾,至少执行一次。while:条件在循环头部。Page/28流程控制ifthenelse语句语法if[条件语句1]then命令1elif[条件语句2]then命令2else命令3fi(条件1为真)(条件1为假,条件2为真)(条件2为假)Page/28流程控制#!/bin/bash#

7、iftest1echo"inputonenumber:"readaecho"inputtheothernumber:"readbif["$a"-lt"$b"]thenecho"$aislessthan$b"elseecho“$aisgreaterthan$b"fiPage/28流程控制#!/bin/bash#iftest2echo"inputthefistnumber:"readaecho"inputsecondnumber:"readbecho"inputthirdnumber:"readcif[$a

8、-gt$b]&&[$b-gt$c]thenecho"$aismax"elif[$b-gt$a]&&[$a-gt$c]thenecho"$bismax"elseecho"$cismax"fiPage/28流程控制(Cont.)case语句语法case值in模式1)命令1;;模式2)命令2;;模式3)命令3;;esacPage/28流程控制(Cont.)#!/bin/bash#caseselectcase$1instart)echo"comma

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

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

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