欢迎来到天天文库
浏览记录
ID:48039837
大小:1.31 MB
页数:47页
时间:2020-01-14
《Shell编程基础.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、1Shell编程基础知识2一.Shell介绍二.Shell特性三.变量与运算符四.Shell的输入与输出五.Shell函数培训内容内容3一.SHELL介绍4Shell-UNIX命令解释器问题引入:DOS系统的命令由command负责执行,并且对重覆性或多个命令运行可写成批处理文件,只要执行这个批处理文件就等於执行这些命令。UNIX系统如何处理?UNIX系统利用shell命令解释器(command-languageinterpreter),完成用户输入命令的执行,是用户与系统交互的界面,是命令与kernel之间的接口。shel
2、l接收用户输入的命令,对命令作出解释,然后发送给kernel执行之。Shell:shell是一种命令语言,同时又是一种程序设计语言。shell程序(脚本)相当于dos的批处理文件,可简单到只有一条命令,也可以包括循环、条件语句、数学运算、控制结构的程序,完成复杂的管理任务。5Shell-UNIX命令解释器6Shell脚本介绍为什么使用Shell脚本?批量命令重复、条件等控制Shell脚本的基本内容#!/bin/sh第一行注释:#第二行变量第三行条件判断、循环第四行脚本的运行方式chmod?+x脚本./脚本文件名7Shell脚
3、本介绍示例:hello.sh#!/bin/bash#v_word="helloworld"echo$v_word8二.SHELL特性9别名aliasEg:aliasll=`ls-alh`10命令替换myfile的内容如下:marmfindfile实现替换如下:ls`catmyfile`-al11后台处理什么是后台?一个终端可以同时运行多个程序用法:nohupcommand&可以再后台运行此命令示例:nohubtar-czf要压缩的文件名压缩后的文件名&12变量示例:#!/bin/bash#这是一个基本的shell脚本test
4、=“helloworld”echo$test变量用来存储信息13管道(
5、)把一个命令的输出连接到另一个命令的输入。示例:ls
6、sortls-lrt*.dat
7、wc-l14重定向(<>)与管道相关,可以改变程序运行的输入来源和输出地点示例:sortmyfile_test.txt15模式匹配显示以txt为扩展名的文件或显示以a开头的文件,这种情况称为模式匹配。实现方式:正则表达式如:ls*.txt16特殊字符分号(;):允许在一行上放多个命令。eg:cd~
8、/backup;mkdirstartup;cp~/.*startup/.&:命令后执行。括号():创建成组的命令。竖杆(
9、):管道标示符。<>&:表示重定向。*?[]!:表示模式匹配。$:变量名的开头。#:表示注释(第一行除外)。空格,制表符,换行符:当做空白。$((...)):对括号内的表达式求值。**:两个星号在运算时代表"次方"的意思。{}大括号:用法一:通配符扩展。'string'单引号和"string"双引号双引号:如果想在定义的变量中加入空格,就必须使用单引号或双引号,单、双引号的区别在于双引号转义特殊字符而单引
10、号不转义特殊字符17特殊字符双引号(“):用来使shell无法认出空格、制表符和其他大多数特殊字符,这样“DavidMedinets”表示一个值。让$反斜杠反引号不失效单引号(‘):用来使shell无法认出所有特殊字符。反引号(`):用来替换命令。反斜杠():用来使shell无法认出以上的特殊字符,使其后的特殊字符失去特殊含义。18模式匹配:正则表达式正则表达式在shell、工具程序、Perl语言中有非常重要的地位。正则表达式通过一些特殊符号表示特定的字符串模式。常见的特殊字符包括:字符功能^置于待搜索的字符串之前,匹配行
11、首的字$置于待搜索的字符串之后,匹配行末的字<匹配一个字的字头>匹配一个字的字尾.匹配任意单个正文字符[str]匹配字符串str中的任意单个字符[^str]匹配不在字符串str中的任意单个字符[a-c]匹配从a到c之间的任一字符*匹配前一个字符的0次或多次出现忽略特殊字符的特殊含义,将其看作普通字符19模式匹配:正则表达式扩充的特殊字符:字符功能+重复匹配前一项1次以上?重复匹配前一项0次或1次{j}重复匹配前一项j次{j,}重复匹配前一项j次以上{,k}重复匹配前一项最多k次{j,k}重复匹配前一项j到k次s
12、t匹配
13、s或t中的一项(exp)将表达式exp作为单项处理20元字符含义^只匹配行首$只匹配行尾*匹配0或多个字符[]匹配[]内字符屏蔽元字符的特殊含义.匹配任意单字符模式{n}匹配模式出现次数,n模式{n,}m模式次数,至少为n模式{n,m}模式出现在n,m之间模式匹配:正则表达式
此文档下载收益归作者所有