本文转载自微信公众号《新钛云服务》,作者秦明。转载本文请联系新钛云服务公众号。本文详细介绍了sed-n参数、-I参数、-e参数的使用,并举例说明。总结:-n参数示例:选择某段时间的日志...-i参数示例:删除第一行示例:删除2-5行示例:删除每行最后两个字符示例:删除每行前面双字符实例:删除行首的空格实例;删除空行,添加一行内容替换第一行的内容......-n参数只打印与模式匹配的行。例子:在日志的中间选择一个时间段的日志日期例子#sed-n'/2019-07-2309:[0-9][0-9]:[0-9][0-9]/,/2019-07-2311:[0-9][0-9]:[0-9][0-9]/p'20190723_teacher.log注意:这个方法后面的时间会选择你小时的第一个条目,以及剩下的不选择日志开头日期的例子:#sed-n'/2019-07-2309:25:55/,/2019-07-2310:25:55/p'accessSuccess.log查看某个时间段到现在的系统日志#sed-n'/Jun2112/,$p'/var/log/messages|less问题:能按时间查看日志的原理是什么?直接写日期和普通的有什么区别?原理是匹配第一个和最后一个都打印出来,所以如果要取9:00到10:00的日志,11:00打印第一个,就可以保证从9开始的所有日志:00到10:00被打印出来。直接写日期和正则表达式的区别是精确匹配和模糊匹配。-i参数直接修改读取文件的内容,而不是输出到终端。示例:删除第一行#sed-i'1d'1.sql示例:删除2-5行#sed-i'2,5d'1.sql示例:删除每行的最后两个字符#sed-i's/..$//'1.sql示例:删除每行的前两个字符#sed-i's/..//'1.sql示例:删除行首的空格#sed-i's/^[[:space:]]*//'1.sql#sed-i's/^[]*//'1.sql#sed-i's/^*//'1.sql实例:删除空行#sed-i'/^$/d'1.sql删除配置文件中注释行#sed-i's#//.*##g'1.sql删除注释行#sed-i's#\#.*##g'#sed-i's#\#.*##g'1.sql删除最后一行#sed-i'$d'1.sql删除第一个字符#sed's/^.//g'1.sql添加一行第一行的内容#sed-i'1iinsertintoadid_intentionvalues'1。sql插入符,匹配文中B开头的行,追加2008#sed-i's/B.*/&2008/'1.sql插入符,匹配文中B开头的行前加上2008#sed-i's/B文本.*/2008&/'1.sql替换内容,例如将第2-5行的内容替换为case#sed-i'2,5ccase'1.sql更改所有以d开头的行中的所有x或D到X#sed'^[dD]/s/x/X/g'1.sql替换内容,把aaa替换成bbb#sed-i's/aaa/bbb/'1.sql#sed-i's/aaa/bbb/g'1.sql#sed-i'1,\$s#bbb#aaa#g'1.sql注意:两种命令格式的区别在于是否有“g”。没有"g"表示只替换第一个匹配的字符串,"g"表示替换所有匹配的字符串,"g"可以认为是"global"(全局)的缩写,第三项1代表第一行,$代表最后一行,1,$代表从第一行到最后一行的分隔符可以任意#sed-i's#bbb#aaa#g'1.sql-e参数-e和不带-e的区别-e可以在同一行执行多个命令,不加-e,只操作了's/11/00/g'#sed's/11/00/g''s/22/99/g'1.sqlsed:cannotreads/22/99/g:没有这样的文件或目录,aaa,aadd-e,'s/11/00/g'和's/22/99/g'都被操作过#sed-e's/11/00/g'-e's/22/99/g'1.sqla,aaa,aaa,aaa,a00a,aaa,aaa,aaa,a99a,aaa,aaa,aaa,a00Ba,aaa,axa,aaa,a99a,aaa,aaa,aaa,一个常见的例子:sed获取ip#ifconfigen0|sed-e'/inet/!d'//不删除匹配的inetete从开头到inet#ifconfigen0|sed-e'/inet/!d'-e's/^.*inet//g'-e's/netmask.*$//g'//替换删除netmask到结尾#ifconfigen0|sed-e'/inet/!d'-e's/^.*inet//g'-e's/netmask.*$//g'-e's/[[:space:]]*//g'//最后去掉第一个空格常见例子:处理如下文件内容,取出域名并根据域名统计排序#cataaa.loghttp://www.tyun.cn/index.htmlhttp://www.tyun.cn/1.htmlhttp://post.tyun.cn/index.htmlhttp://mp3.tyun.cn/index.htmlhttp://www.tyun.cn/3.htmlhttp://post.tyun.cn/2.html#sed-e's#^.*//\(.*tyun.*\)/.*html#\1#gp'aaa.log|sort|uniq-c|sort-rn
