linux脚本编写方法_第1页
linux脚本编写方法_第2页
linux脚本编写方法_第3页
linux脚本编写方法_第4页
linux脚本编写方法_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Shell脚本编写脚本编写目标目标n1. shell的产生与发展的过程的产生与发展的过程n2. shell环境变量的设置和使用环境变量的设置和使用n3. bash的基本操作方式的基本操作方式n4. shell的输入输出的输入输出n5. 简单的简单的shell脚本编辑方法脚本编辑方法Shell环境环境nShell的产生与发展的产生与发展nLinux ShellnShell 变量变量nShell 环境配置文件环境配置文件Shell的产生与发展的产生与发展nShell的作用的作用u操作系统与用户进行交互操作的界面操作系统与用户进行交互操作的界面u提供脚本语言编程环境,方便用户自动批量处提供脚本语言编

2、程环境,方便用户自动批量处理大量的工作任务理大量的工作任务Shell的产生与发展(的产生与发展(Cont.)nShell的种类的种类uBourne shell( Stephen Bourne,1979年)年)uC shell (BillJoy ,70年代末期)年代末期)uKorn shell (DavidKorn,80年代中期年代中期 )Linux Shelln支持支持Bourne shell、C shell和和Korn shell n标准标准shell为为bash(GNU Bourne-Again Shell)uBourne shell向下兼容向下兼容 u作业控制(作业控制(job cont

3、rol) u别名功能(别名功能(aliases) u命令历史(命令历史(command history) u命令行编辑功能命令行编辑功能 u自定义功能键自定义功能键 u提供更丰富的变量类型、命令与控制结构提供更丰富的变量类型、命令与控制结构 Shell 变量变量n语法语法u变量名由下划线(变量名由下划线(_)、字母、数字组成,但变)、字母、数字组成,但变量名不能以数字开头,大小写敏感量名不能以数字开头,大小写敏感u变量值为一个字符串变量值为一个字符串u使用使用“$”符号获得变量的值符号获得变量的值n类型类型u本地变量本地变量u环境变量环境变量u位置参数变量位置参数变量u预定义变量预定义变量本地

4、变量本地变量n设置变量:设置变量:n引用变量:引用变量:n清除变量:清除变量:n查看变量:查看变量:n变量值置换变量值置换环境变量环境变量n设置环境变量:设置环境变量:n引用环境变量引用环境变量 :n常用环境变量常用环境变量uHOMEuPATHuTERMuUIDuPWDuPS1位置参数变量位置参数变量n由由Shell在程序运行时设置在程序运行时设置n共共10个变量,从程序名开始依次为个变量,从程序名开始依次为09nshift命令递归访问参数命令递归访问参数$0$1 $2$3 预定义变量预定义变量$#传递到脚本的参数的数量传递到脚本的参数的数量$*以一个单字符串显示传递到脚本的所有参数内容以一个

5、单字符串显示传递到脚本的所有参数内容$?命令执行后返回的状态,返回命令执行后返回的状态,返回0表示成功执行,其它表示成功执行,其它值则表明执行错误值则表明执行错误$当前进程的进程号当前进程的进程号$!后台运行的最后一个进程号后台运行的最后一个进程号$0当前执行的进程名当前执行的进程名LINUX系统系统Shell 环境配置文件环境配置文件n/etc/profile、/etc/profile.d/*n/.bash_profile、/.bashrc、 /etc/bashrc/etc/profile、/etc/profile.d/*用户用户1/.bash_profile/.bashrc用户用户2/.b

6、ash_profile/.bashrc用户用户3/.bash_profile/.bashrcbash常用功能常用功能n通配符通配符n命令自动展开命令自动展开n命令历史与命令重复命令历史与命令重复通配符通配符n* 通配符:匹配任意多个任意字符通配符:匹配任意多个任意字符n?通配符:匹配任意一个字符通配符:匹配任意一个字符 判断下列使用了通配符的字符串的能否判断下列使用了通配符的字符串的能否匹配匹配“reportfiles”字符串?字符串?*r*f*report*files*report*filesopq*report*?r?f?eportfiles?eport*?opq?report*命令自动展

7、开命令自动展开n键键nPATH环境变量环境变量n目录路径展开目录路径展开命令历史与命令重复命令历史与命令重复nhistoryn光标上下移动键光标上下移动键n!n!nn!stringn!:pn!$管道与重定向管道与重定向n标准输入标准输入/输出输出n重定向重定向n管道管道标准输入标准输入/输出输出n每个每个Linux进程都会打开进程都会打开3个文件用来处理程个文件用来处理程序的输入输出工作序的输入输出工作输入文件:标准输入输入文件:标准输入0 0键盘键盘输出文件:标准输出输出文件:标准输出1 1屏幕屏幕错误输出文件:标准错误输出错误输出文件:标准错误输出2 2屏幕屏幕重定向重定向n 输出重定向输

8、出重定向u语法:语法:u示例:示例:n2 错误输出重定向错误输出重定向u语法:语法:u示例:示例:重定向(重定向(Cont.)n常用文件重定向命令常用文件重定向命令command filename把标准输出重定向到一个文件中把标准输出重定向到一个文件中command filename把标准输出追加重定向到一个文件中把标准输出追加重定向到一个文件中command 1 fielname把标准输出重定向到一个文件中把标准输出重定向到一个文件中command filename 2 &1把标准输出和标准错误输出重定向到一个文件把标准输出和标准错误输出重定向到一个文件中中command 2 fil

9、ename把标准错误输出重定向到一个文件中把标准错误输出重定向到一个文件中command filename2以以filename为标准输入,为标准输入,filename2为标准输为标准输出出command filename把把filename作为命令的标准输入作为命令的标准输入command delimiter从标准输入读入数据,直到遇到从标准输入读入数据,直到遇到delimiter为止为止管道管道n| 管道操作符管道操作符u语法语法u示例示例Shell脚本脚本n脚本概念脚本概念n脚本运行脚本运行n基本脚本编程基本脚本编程脚本概念脚本概念n无需编译,解释执行无需编译,解释执行n文本文件形式存在

10、文本文件形式存在n强大的正则表达式操作强大的正则表达式操作n运行速度慢运行速度慢n数据类型支持少数据类型支持少n用于系统管理和文件操作用于系统管理和文件操作脚本运行脚本运行n编写脚本程序编写脚本程序n改变脚本程序文件的权限为可执行改变脚本程序文件的权限为可执行n运行脚本程序运行脚本程序u# ./脚本程序脚本程序u# bash 脚本程序脚本程序u# . ./脚本程序脚本程序u# exec 脚本程序脚本程序基本脚本编程基本脚本编程n变量类型(变量类型(Shell 变量一节变量一节)n条件测试条件测试n流程控制流程控制n函数函数条件测试条件测试n使用使用test命令命令u语法:语法:n使用括号使用括

11、号 u语法:语法: n条件表达式的值为真返回零,为假时返回非条件表达式的值为真返回零,为假时返回非零值零值流程控制流程控制nif then else语句语句u语法语法 if 条件语句条件语句1 then命令命令elif 条件语句条件语句2 then 命令命令else命令命令fi流程控制(流程控制(Cont.)nfor循环循环u语法语法流程控制(流程控制(Cont.)nuntil循环循环u语法语法流程控制(流程控制(Cont.)nwhile循环循环u语法语法流程控制(流程控制(Cont.)ncase语句语句u语法语法函数函数n函数定义函数定义n函数调用函数调用n函数导出函数导出Shell总结总结

12、nshell是是Linux系统与用户之间的交互界面,用户向系统与用户之间的交互界面,用户向shell提交任务,提交任务,shell向系统内核转交任务,并管向系统内核转交任务,并管理相关工作,执行完成后理相关工作,执行完成后shell取回工作结果,通过取回工作结果,通过界面返回给用户。界面返回给用户。shell还提供编程语言,接受用户还提供编程语言,接受用户关于批处理任务的提交关于批处理任务的提交n第一个重要的第一个重要的shell是是Stephen Bourneshell于于1979年底提出的年底提出的Bourne shell,另外两个重要的,另外两个重要的shell是是Kron shell

13、和和 C shell。Linux支持支持3种类型种类型的的shell,默认的为,默认的为Bourne shell的变体版本的变体版本GNU bashnshell支持支持4种类型的变量(本地变量、环境变量、种类型的变量(本地变量、环境变量、参数变量及预定义变量)参数变量及预定义变量)Shell总结(总结(Cont.)nshell的通配符包括的通配符包括“*”和和“? ”,分别匹配任意多的分别匹配任意多的字符和一个任意字符。字符和一个任意字符。bash提供了命令行自动展开提供了命令行自动展开和历史命令管理操作的功能和历史命令管理操作的功能nshell打开打开0、1、2号文件描述符文件,并对应为键号文件描述符文件,并对应为键盘和屏幕,构成盘和屏幕,构成shell的标准输入输出,大多数命令的标准输入输出,大多数命令的输入输出通过标准输入输出进行。的输入输出通过标准输入输出进行。shell提供了输提供了输入输出重定

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论