逸_尘

对酒当歌,人生几何!

导航

Linux日志查找

当你不确定文件是否在该文件夹下时,可以通过ll ls cd查看。

ll                   查看当前文件夹下的所有信息

ls  -a               查看所有文件 包含隐藏文件(前面加 . 的文件)

ls                   查看所有文件 不包含隐藏文件

cd 文件夹           进入当前文件夹下的文件夹

cd 文件夹完整路径   直接进入某个路径下的文件夹

cd  ..               返回上一级

cd                  返回根目录

 

Find

你仅记得日志部分文件(夹)名时可以用find查找

基本语法:find 路径 -name  ‘*a*’

find  ./  -name  ‘*a*’  在当前路径(./)查找名字包含a的所有文件及文件夹

find  /home/test010/hanhan  -name  ‘*txt’ 

查找在hanhan文件夹中所有以TXT结尾的文件和文件夹

find  ./  -name  ‘*aaa*’  -type d

在当前路径下查找名之中包含aaa的文件夹

-type d 是找文件夹  -type  f 是找文件

find  ./  -name  ‘*aaa*’  |xargs  grep 1234

在当前路径下查找名字包含aaa的文件 且把文件内容包含1234的找(过滤)出来

find  /home/test010/hanhan  -name  ‘*txt’ | xargs  rm     

在hanhan 路径下查找名字以txt 结尾的文件并批量执行删除

find /home/test050/test1/ -name 'test.log' |xargs -I FILE cp FILE /home/test050/222/123.log

在test1 文件夹下面 查找一个名字为test.log的文件 并把它备份到222文件夹下面且重命名为123.log  (其中 xargs -I为格式 I必须大写 cp 两端的 file 可以自己取,只要保持一致即可)

 

Grep过滤

知道日志具体报错信息及日志名可以用find快速查找(使用较多)

grep  ‘Null pointer exception’  /home/test010/messagepush.txt

在此路径下的messagepush.txt 文件中过滤出来Null pointer exception4(场景举例 订单出错可查订单号,具体报错信息)

grep  -n  ‘Null pointer exception’  /home/test010/messagepush.txt

在此路径下的messagepush.txt 文件中过滤出来Null pointer exception 并显示所在行号

grep 'Null pointer exception'  /home/test011/webmessage/messagepush.txt  - -color  -C3(--color  写成 --col )

把日志文件 messagepush.txt (完整路径)里面的Null pointer exception 过滤出来并且用颜色标记,并且显示附近的3行(显示本行及本行的上下三行)其中C3 的C必须大写,-C3使用较多,因为仅有报错信息可能无法分析出具体的问题,需要关注其上下的日志进行协助分析。

tail,head

当你仅记得日志的大概位置的时候可以用tail head

tail  -f b.log 查看动态日志(可跟绝对路径)    (ctrl+c强制退出)

tail  -100f  b.log 查看最近100行的动态日志(打印最新日志,这个使用也比较多)

tail -n 3 b.log 显示最后三行的日志

head -n 3 b.log 显示前三行的日志

tail -n +3 b.log 从第三行开始显示以后的日志

head -n -2 b.log 显示除了最后两行的所有日志

sed

你记得报错日志大概位置,或大概时间可以用sed

sed -n ‘3,18p’ article.log               查询出article.log 文件里面的第三行到第18行日志

sed -n ‘18p’ article.log                 查询出article.log 文件里面的第18行日志

sed -n '/2018-07-30 09:29:55/,/2018-07-30 09:31:55/p' article.log

查询2018-07-30 09:29:55到2018-07-30 09:31:55时间段之间的日志

sed  -i  ‘s/6666/9999/g’ article.log

把article.log 里面的6666批量替换成9999

cat

cat  aaa .txt |grep -E  ‘123|456|789’   同时过滤 123,456,789三个字段

 

posted on 2019-10-28 11:23  逸_尘  阅读(1557)  评论(1编辑  收藏  举报