linux日志命令sed linux日志信息

Linux日志截取利器——sed命令(亲测可用) 在生产环境中,往往没有条件给我们去debug排查,更多时候我们是通过日志来看具体的报错日期 。
但是日志往往是一直在实时更新 , 而且记录条数庞大,很难直接定位到错误信息 。这个时候,就可以利用sed命令来截取指定时间段内的日志(也是网上大多数博主的做法) 。
具体命令如下:
这条命令可以查询2020.10.13号当天9点到9点十分中间的所有的日志信息 。
但是这条命令的使用有两个前提(很多网上的博主都没有提到)
第一,日志输出的日期格式是要满足命令中的格式,如果不是的话就跟着实际的格式改
第二 , 输入的日期必须要真实存在?。。?,比如说9点整刚好没有日志输出 , 那么这条命令就会失效
更加通配的命令可以是这样,使用号*
这样无论九点整的时候是否有日志产生,就都可以获取到9点整到现在的所有日志了
使用,将截取到的内容输出到指定的文件中,方便进一步查看
ps:在实际操作中,我们一般会在后面加grep命令做进一步的关键字过滤
linux sed 之 查看指定时间段的日志命令格式: sed -n '/起始时间/','/结束时间/p'[日志文件]
eg1 :
注:
日期时间格式要和日志文件中的保持一致;
eg2 :
nginx中的日期时间格式和eg1中的格式不一致,这时使用的命令是:
注:
使用“\”是为了转义“/” , 不然命令行会报错
也可以将输出的命令行内容输出到一个文本文件中 , 这样方便用编辑器查看,命令是:
eg3 :
这样输出的内容就会保存在gfc.log文本文件中 。
eg:
Linux sed 命令详解sed命令行格式:sed [options] 'command' file(s)
【linux日志命令sed linux日志信息】options常用选项:
-n或--quiet或——silent:仅显示script处理后的结果;
-e:以选项中的指定的script来处理输入的文本文件;
-f:以选项中指定的script文件来处理输入的文本文件;
-r∶sed 的动作支援的是延伸型正规表示法的语法;
-i∶直接修改读取的档案内容 , 而不是由萤幕输出;
-h或--help:显示帮助;
-V或--version:显示版本信息 。
Command常用命令:
a:新增,a 的后面可以接字符串,而这些字符串会在新的一行出现(目前的下一行);
c:取代,c 的后面可以接字符串 , 这些字符串可以取代 n1,n2 之间的行;
d:删除,d 后面通常不接任何字符串;
i:插入,i 的后面可以接字符串,而这些字符串会在新的一行出现(目前的上一行);
p:列印,亦即将某个选择的资料印出 。通常 p 会与参数 sed -n 一起运作;
s:取代,可以直接进行取代的工作,通常与正规表达式搭配使用 。
实例说明:
新增操作:a命令
sed '/^bird/a\test' file将test追加到 以bird开头的行后面
删除操作:d命令
sed '/^$/d' file #删除空白行;
sed '2d' file #删除第二行;
sed '2,$d' file #删除第2行到最后一行;
sed '$d' file #删除最后一行;
sed '/^bird/'d file #删除所有开头是bird的行;
插入操作:i命令
sed -i '3i\bird ' bird.conf #在bird.conf文件第3行之前插入bird
替换文本中的字符串:s命令
sed 's/bird/birds/' file #将文本中的bird替换成birds;
sed -i 's/ bird / birds /g' file #将file文件中每一行的第一个bird替换为birds;
关于linux日志命令sed和linux日志信息的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息 , 记得收藏关注本站 。

    推荐阅读