沈阳电脑维修网,沈阳上门维修电脑服务
当前位置: 主页 > 程序数据代码>shell脚本基础_程序数据_shell >

shell脚本基础_程序数据_shell

时间:2011-12-5来源:沈阳电脑维修网 作者: 吕先生:13889116605点击:
沈阳电脑维修,上门维修电脑
1、shell脚本介绍      一个shell脚本可以包含一个或多个shell命令,可用来自动完成通常在命令行上执行的重复循环或者复杂的工作,节省大量时间,且功能强大。shell脚本主要内容   脚本按行解释执行,每一行可以是命令、注解、或是流程控制指令等   脚本第一行以#!开始,后面加所使用的shell(需指明整个路径名称)(如:以#!/bin/sh指定使用BourneShell)   在脚本中执行一个命令的方法和在命令行中相同,可以前台或后台执行,也可设定一些环境变量   注释,#后面的同一行文字为注释,解释器对此不予解释   脚本的流程控制近似于一般高级语言,这使得脚本的功能比DOS的批处理文件功能更加强大2、常用shell命令   文件及文件属性操作 ls、cp、mv、rm ln、ln–s、chmod、chown、chgrp   输入输出操作 echo、cat >>、>、<<、|标准输入0、标准输出1、标准错误输出2  目录操作 cd、pwd、lsdir mkdir、cp、mv、rmdir、rm-r  文本过滤 Head、tail、grep、sort、uniq sed、awk 其他 find、expr 获取信息:man3、正则表达式  ——sed与awk的基础正则表达式是一些特殊或不很特殊的字符串模式的集合。字符集包括:普通字符集和元字符集(通配符)普通字符集:大小写字母、数字、空格、下划线^  行首$  行尾*  一个单字符后紧跟*,匹配0个或多个此单字符[] 匹配[]内字符,可以是一个单字符,也可以是字符序列。    可以使用”-“来表示[]内范围,如[1-5]等价于[1,2,3,4,5]。\            屏蔽一个元字符的特殊含义,如\$表示字符$,而不表示匹配行尾。.           匹配任意单字符几个常见的例子:显示可执行的文件:ls–l|grep…x...x..x只显示文件夹:ls–l|grep ^d匹配所有的空行:^$匹配所有的单词:[A-Za-z]*匹配任一非字母型字符:[^A-Za-z]包含八个字符的行:^……..$(8个.)4、Sed命令命令格式  sed ‘/pattern/action’ files pattern:正则表达式 action:操作,包括p、d、s示例:    打印行:sed–n‘/0\.[0-9][0-9]$/p’fruit_prices.txt    删除行:sed‘/^[Mm]ango/d’fruit_prices.txt    执行替换/pattern1/s/pattern2/pattern3/g:    sed‘s/paech/peach/gfruit_prices.txt’    使用多重sedsed–e‘cmd1’……-e’cmdN’files:     sed–e‘s/paech/peach/’–e‘s/*[0-9][0-9]\.[0-9][0-9]$/\$/’fruit_prices.txt在管道中使用sed5、awk命令命令格式  awk‘/pattern/{actions}’files 示例:字段编辑:awk–F:‘{print$1,$3}’inputfiles 或:awk–F:‘{printf“%sis%s\n”,$1,$3}’inputfiles执行指定模式的操作: awk‘/*\$[1-9][0-9]*\.[0-9][0-9]*/{print$0;next}/*\$0\.[0-9][0-9]*/{print$0}’fruit_prices.txt比较操作符:<、>、<=、>=、==、!=、value~/pattern/、value!~/pattern/(相关:&&、||) awk‘($2~/^\$[1-9][0-9]*\.[0-9][0-9]$/)&&($3<75)’{printf“……”}’input_f利用管道符将标准输入作为输入6、shell变量      为使shell编程更加容易而且有效,系统提供了一系列shell变量,可以保存诸如文件名、路径名等有用信息,使系统获知用户相关设置。本地变量:在用户现在的shell生命期的脚本中使用,若shell启动另一个进程或退出,该变量值无效环境变量:用于所有用户进程(子进程),环境变量可以在命令行中设置,但用户注销时变量值丢失。可将此变量放入.profile文件中使每次登录使这些值都被初始化特定变量参数位置变量参数7、本地变量命名:可以任何不包含空白字元的字串来当做变量名称设置:v-name=value或{v-name=value}其中,          =:设置实际值到v-name;    +:若已设置v-name,重设其值          ?:若未设置v-name,报错;:-:若未设置v-name,设置新显示:echo可以显示单个变量取值(变量使用时名字前加$)清除:可用unset命令清除变量,即:unset v-name查看所有本地变量:可用set命令显示所有本地定义的变量只读变量:在设值变量后加命令:readonlyv-name,即       
上一篇:sed (P.h.H)参数用法_程序数据_shell
下一篇:测试与分支_程序数据_shell
查看[shell脚本基础_程序数据_shell ]所有评论
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码:
推荐内容
关于我们 服务价格 联系我们 企业网站优化 沈阳网站建设 沈阳维修电脑