Linux中文本处理.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Linux中文本处理

Linux文本处理——sed、awk命令引入:有一个例子:在服务器日志fresh.log中,找到所有报错的日期。$ sed -n `/Error/p` fresh.log | awk `{print $1}`Linux 三大利器:grep:查找一行指令,轻松搞定sed:行编辑器awk:文本处理工具正则表达式》》》sed基本处理》》》awk更为复杂的处理正则表达式场景:查找——查找所有包含‘Linux’的行取出——取出以‘abc’开头的所有单词匹配——匹配两位数、密码、qq号、身份证号等正则表达式学习的方法:1.单个字符表示2.字符串表示3.表达式示例:以cat /etc/passwd文档为例。首先将这个文档拷贝到~/. 下cp /etc/passwd ~/.grep查找文件内容:grep+查找内容 +文件/文档grep ‘mooc’ passwd正则表达式单字符字符:1.特定字符 2. 范围内字符 3.任意字符特定字符:某个具体的字符‘1’ ‘a’grep ‘1’ passwd范围内字符:单个字符[]数字字符:[0-9], [259]grep ‘[0-9]’ passwd小写字符:[a-z]大写字符:[A-Z]大小写字符:[a-zA-Z]数字之外的字符:[a-zA-Z, :_/-().]反向字符: ^取反:[^0-9], [^0]任意字符: . ‘[.]’ 指小数点。‘\.’ 指本来的意思,小数点。正则表达式其他符号:边界字符:头尾字符^: ^root头字符注意与[^]的区别。$ : flase$尾字符空行:‘/^$/’元字符(代表普通字符或特殊字符)\w : 匹配任何字类字符,包括下划线\W :匹配任何非字类字符。\b : 分隔符,代表单词的分隔。‘\bx\b’正则表达式字符组合字符串:‘root’‘100’ ‘m..c’‘[A-Z][a-z]’ 大写小写组合‘\b[0-9][0-9]\b’ 两位数组合字符串:重复:*: 零次或多次匹配前面的字符或子表达式se* 表示:sseseeseeesee… 匹配 +: 一次或多次匹配前面的字符或子表达式se\+表示:seseeseeesee… 匹配?:零次或一次匹配前面的字符或子表达式se\?表示: s se 匹配对多个字符重复:(se)*grep ‘\(se\)*’ test.txt grep ‘\(se\)\+’ test.txt重复特定次数:{n,m} n是最小次数,m是最大次数。grep‘[0-9]\{2,3\}’passwd匹配两位数到三位数(大括号前面一定要加‘\’)任意字符串的表示:.*比如:^r.*(以r开头的任意字符)m.*c(m和c之间的任意字符串)\bm[a-z]*c\b(缩小范围,之间只能是字母)逻辑的表示:|: 表示“或”。‘bin/\(false\|true\)’正则表达式例子: 匹配4-10位qq号grep ‘^[0-9]\{4,10\}$’qq.txt匹配15位或18位身份证号(支持带x的)grep‘^[1-9]\([0-9]\{13\}\|[0-9]\{16\}\)[0-9xX]$’qq.txt匹配密码(由数字、26个字母和下划线组成)grep ‘^\w\+$’qq.txt使用sed工具:自动处理文件分析日志文件修改配置文件sed处理特点:sed一次处理一行内容sed不改变文件内容(除非重定向)使用sed——格式命令行格式$sed [options] ‘command’ file(s)Options: -e ; -nCommand : 行定位(正则) +sed命令(操作)例如:$ sed -n ‘/root/p’ $ sed -e ’10,20d’-e ‘s/false/true/g’脚本格式$ sed -f scriptfile file(s)sed——操作命令基本操作命令(1): -p (打印相关的行,要与参数-n匹配一起使用。)$ sed -n‘p’passwd定位一行: x;(行号)/pattern/$ nlpasswd | sed-n ‘10p’$ sed -n ‘/mooc/p’passwd 定位几行:x,y;(从x到y行) /pattern/,x;x,y!(不选择x到y行)$nlpasswd | sed -n ‘10,20p’$ nlpasswd | sed -n ‘/news/,/mooc/p’定位间隔几行:first~step(表示从first行开始,中间间隔step行数。)$ nlpasswd | sed -n ‘1~2p’基本操作命令(2):-a(新增行)/i(插入行)-c(替代行)-d(删除行)例子:$ nlpasswd | sed ‘1,5a ========

文档评论(0)

2017ll + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档