linux grep查找关键字_Linux 查询项目控制台日志常用命令
1 Linux 安装tomcat 并打包部署项目地址:Linux 安装tomcat 并打包部署项目1 . Linux 下载安装的软件: yum remove 名称 rpm -e –nodeps 名称 rpm -q -a 名称 日志筛选命令:1. 首先: cat -n test.log |grep "地形" 得到关键日志的 行号查看这个关键字前10行和后10行的日志:cat -n test.log
1 Linux 安装tomcat 并打包部署项目
地址:Linux 安装tomcat 并打包部署项目
1 . Linux 下载安装的软件:
- yum remove 名称
- rpm -e –nodeps 名称
- rpm -q -a 名称
- 日志筛选命令:
1. 首先: cat -n test.log |grep "地形" 得到关键日志的 行号
查看这个关键字前10行和后10行的日志:
cat -n test.log |tail -n +92|head -n 20
tail -n +92表示查询92行之后的日志
head -n 20 则表示在前面的查询结果里再查前20条记录
2. 按日期查询
sed -n '/2014-12-17 16:17:20/,/2014-12-17 16:17:36/p' test.log
3. 查看指定行的命令:
sed -n '5,10p' filename 这样你就可以只查看文件的第5行到第10行。
4. 分页查找more:
cat -n test.log |grep '地形' |more
这样就分页打印了,通过点击空格键翻页
按 b 键就会往回(back)一页显示
按空白键(space)就往下一页显示
- 查找ERROR字符,并显示ERROR所在行的之后5行
cat log.txt | grep 'ERROR' -B 5 之前5行
cat log.txt | grep 'ERROR' -C 5 前后5行
cat log.txt | grep -v 'ERROR' 排除ERROR所在的行
5. 使用 >xxx.txt 将其保存到文件中
cat -n test.log |grep "地形" >xxx.txt
查找关键字所在文件的位置,并显示前后十行数据
cat test.log | grep 'XXX' -C 10
- grep命令多条件查询
1. 或操作
1. 找出文件(filename)中包含123或者包含abc的行
grep -E ’123|abc’ filename
2. egrep
egrep ’123|abc’ filename
3. awk
awk ’/123|abc/’ filename
2. 与操作
1. 显示既匹配 pattern1 又匹配 pattern2 的行。
grep pattern1 files | grep pattern2
3. 其他操作
1. 不区分大小写地搜索。默认情况区分大小写
grep -i pattern files
2.只列出匹配的文件名,
grep -l pattern files
3. 列出不匹配的文件名
grep -L pattern files
4. 只匹配整个单词,而不是字符串的一部分(如匹配‘magic’,而不是‘magical’)
grep -w pattern files
5. 匹配的上下文分别显示[number]行
grep -C number pattern files
- 查询特殊场景:
1. 我们可以根据日志的日期作为搜索条件,并且配合grep使用,
sed -n '/2017-03-08 15:42:03/,/2017-03-08 15:42:05/p' dubbo-access-consumer.2017-03-08.log | grep countOrgOrder
2. 使用模式进行查询
sed -n '/ruby/p' ab #查询包括关键字ruby所在所有行
sed -n '/$/p' ab #查询包括关键字$所在所有行,使用反斜线屏蔽特殊含义
- .sh 和.的区别:
(1)./test.sh
1.第一种方式,是在当前的shell执行脚本本身,也就是说把test.sh当成一个文件执行,这时候我们需要拥有test.sh的运行权限(x权限),而且当我们在执行此命令时,有 2个新进程在运行,一个是test.sh,一个是sleep,如果我们在执行第一个sleep时按ctrl+c终止脚本,test.sh和sleep一起终止,并且第二个sleep不会执行,因为整个test.sh运行已经终止。
(2)sh test.sh
2.第二种方式,是新建一个shell执行test.sh脚本里面的命令,不需要执行权限,有读取权限(r权限)即可,在执行此命令时,有2个新进程在运行,一个是bash,一个是sleep,如果执行第一个sleep时按ctrl+c,bash被终止,结果和第一种方式一样,第二个sleep不会执行。
(3)test.sh
3.第三种方式,是在当前shell执行test.sh里面的命令,不需要执行权限,有读取权限(r权限)即可,在执行此命令时,只有一个新进程在运行,就是sleep,如果在执行第一个sleep时按ctrl+c终止,那么第二个sleep接着运行,直到脚本所有命令执行完。
(4)source test.sh
4.第四种方式和第三种方式一致。
- 切换
1. 切换用户
su root
2. 切换服务
ssh 用户名@ ip
更多推荐
所有评论(0)