AWK,SED,GREP学习笔记及用法心得

AWK,SED,GREP学习笔记及用法心得

ID:37915885

大小:68.50 KB

页数:7页

时间:2019-06-02

AWK,SED,GREP学习笔记及用法心得_第1页
AWK,SED,GREP学习笔记及用法心得_第2页
AWK,SED,GREP学习笔记及用法心得_第3页
AWK,SED,GREP学习笔记及用法心得_第4页
AWK,SED,GREP学习笔记及用法心得_第5页
资源描述:

《AWK,SED,GREP学习笔记及用法心得》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、GREP,AWK,SED学习笔记及使用心得grepgrep是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。一般格式grep[选项]基本正则式[文件]选项:-c不输出内容只统计匹配行数grep-c"123"filename相当于grep"123"filename

2、wc-l-i不区分大小写grep-i"ok"filename匹配包含ok,Ok,oK,OK的所有行-h查询多文件时不显示文件名grep-h"123"*.txt不加-h时会在每一行前显示该行所在文件名-l查询多文件是只显示包含匹配字符的文件名-n查询匹配行及行号-v显示不包含

3、匹配文本的所有行-?同时显示匹配行上下的?行如:grep-2"123"filename同时显示匹配行的上下2行。正则:^锚定行的开始如:'^grep'匹配所有以grep开头的行。$锚定行的结束如:'grep$'匹配所有以grep结尾的行。.匹配一个非换行符的字符如:'gr.p'匹配gr后接一个任意字符,然后是p。*匹配零个或多个先前字符如:'*grep'匹配所有一个或多个空格后紧跟grep的行。.*一起用代表任意字符。[]匹配一个指定范围内的字符如'[Gg]rep'匹配Grep和grep。[^]匹配一个不在指定范围内的字符如:'[^A-FH-Z]rep'匹配

4、不包含A-R和T-Z的一个字母开头,紧跟rep的行。(..)标记匹配字符如'(love)',love被标记为1。<锚定单词的开始如:'锚定单词的结束如'grep>'匹配包含以grep结尾的单词的行。b单词锁定符如:'bgrepb'只匹配grep。特殊事项:1.引号的使用首先说明引号的作用,在shell中使用grep一般要打引号,例如:"grep"这样做,一是防止被误解为shell命令,二是可以查找多个单词的字符串。如,"aaabbb"。如果没引号,将会把bbb误认为文件。一般在grep中输

5、入字符串参数是打双引号,如:$mystr="aaa";grep"$mystr"file,这样$mystr会先被替换成aaa,执行操作是grep"aaa"file。而在单引号中,$mystr不被识别,因此,单引号一般用在正则表达式的匹配上,这样可防止于grep中使用的模式与shell命令中的特殊方式混淆。1.egrep和grep-E的元字符扩展egrep是扩展的grep,支持基本正则和扩展正则,等同于grep-E。扩展集如下:+匹配一个或多个先前的字符。如:'[a-z]+able',匹配一个或多个小写字母后跟able的串。a

6、b

7、c匹配a或b或c。如:grep

8、

9、sed匹配grep或sed()分组符号如:love(able

10、rs)匹配loveable或lovers。egrep还支持将一个文件作为保存的字符串,然后将之传给egrep作为参数,需使用-f开关。3.POSIX字符类为了在不同国家的字符编码中保持一至,POSIX(ThePortableOperatingSystemInterface)增加了特殊的字符类。[:alnum:]文字数字字符[:alpha:]文字字符[:digit:]数字字符[:graph:]非空字符(非空格、控制字符)[:lower:]小写字符[:cntrl:]控制字符[:print::]非空字

11、符(包括空格)[:punct:]标点符号[:space:]所有空白字符[:upper:]大写字符[:xdigit:]十六进制数字(0-9,a-f,A-F)grep支持这种模式,例如:grep'[[:upper:]][[:lower:]]'file。使用时要打双中括号。awkawk是一种编程语言,用于在linux/unix下对文本和数据进行处理。数据可以来自标准输入、一个或多个文件,或其它命令的输出。它支持用户自定义函数和动态正则表达式等先进功能,是linux/unix下的一个强大编程工具。选项-F指定输入文件折分隔符。-f从脚本文件中读取awk命令。模式和操

12、作:awk脚本是由模式和操作组成的:pattern{action}如$awk'/root/'test,或$awk'$3<100'test。模式是用来匹配行的,操作是对匹配结果执行的。两者是可选的,如果没有模式,则action应用到全部记录,如果没有action,则输出匹配全部记录。默认情况下,每一个输入行都是一条记录,但用户可通过RS变量指定不同的分隔符进行分隔。模式:/正则表达式/:使用通配符的扩展集。关系表达式:可以用运算符表中的关系运算符进行操作,可以是字符串或数字的比较。模式匹配表达式:用运算符~(匹配)和~!(不匹配)。操作:操作由一个或多个命令、

13、函数、表达式组成,之间由换行符或分号隔开,并位于大括

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

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

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