wuqiu-ai / daily-interviews

java面试之每日一练
0 stars 0 forks source link

[Linux] 第6天 如何文本搜索 2020-09-02 #40

Open wuqiu-ai opened 4 years ago

wuqiu-ai commented 4 years ago

如何文本搜索?

wuqiu-ai commented 4 years ago

grep命令 : 查找文件里符合条件的字符串

语法:grep [options] pattern file

管道操作符 |

  1. 可以将指令连接起来,前一个指令的输出结果作为下一个指令的输入

使用管道注意点:

  1. 只处理前一个命令正确输出,不允许错误输出;
  2. 右边的命令必须能够接受标准输入流,否则传递过程中将会被抛弃;
  3. sed、awk、grep、head、top、less、more、wc等

常用命令

  1. grep contane\[test\] 1.log
  2. grep -o 1.log
  3. grep -v 'grep'

例子: 统计/etc/passwd中有多少个sbin

grep命令有一个参数-o,可以逐行输出匹配的内容,有多少个匹配就有多少行。所以这道题可以这么做: cat /etc/passwd | grep -o "sbin" | wc -l

在线上查日志定位问题的时候,经常会使用cat xxxx.log |grep yyyy命令,如果grep的时候,想排除某些字段,那么可以如下操作:

cat test.log | grep "login"|grep -v "deviceType" 找出test.log中包含login信息的,且没有deviceType这个字段的