文本处理
cut
grep
-i:忽略大小写
-n:显示行
-v:不包含xx的行
-Ax:之后几行
-Bx:之前几行
-C:前后n行
sed
对文件中内容替换
删除重复行
diff:比较文档
查日志
应用场景一:按行号查看过滤出关键字附近的日志
1)cat -n test.log |grep “debug” 得到关键日志的行号
2)cat -n test.log |tail -n +92|head -n 20 选择关键字所在的中间一行. 然后查看这个关键字前10行和后10行的日志:
tail -n +92表示查询92行之后的日志
head -n 20 则表示在前面的查询结果里再查前20条记录
从文件中查找第一个出现”liu”字符串的行,并从该处前两行开始显示输出
more +/liu test.log
cat error.log | grep -C 5 ‘nick’ 显示file文件里匹配nick字串那行以及上下5行
应用场景二:根据日期范围查询日志
sed -n ‘/2014-12-17 16:17:20/,/2014-12-17 16:17:36/p’ test.log
特别说明:上面的两个日期必须是日志中打印出来的日志,否则无效;
先 grep ‘2014-12-17 16:17:20’ test.log 来确定日志中是否有该 时间点
其他
搜索命令:ctrl + r
搜索命令:man -k 关键字
2>&1
Linux shell中2>&1的含义解释 (全网最全,看完就懂)_业精于勤,荒于嬉;行成于思,毁于随-CSDN博客
2>&1一定要写到>log后面:
- nohup java -jar app.jar >log 2>&1 &
简写: