公众号:uncle39py

V1

2022/05/30阅读:79主题:默认主题

Linux grep命令

grep用于过滤、筛选

用法:grep 选项 '过滤规则' 文件,过滤出来的值会高亮显示

一.选项

-n 带着行号

grep -n 'root' /etc/passwd 过滤出带有'root'的行,把行号显示出来

-i 过滤的时候忽略大小写

grep -n 'root' /etc/passwd 过滤的对象'root'忽略大小写

-l 如果文件里面写有'要过滤'的值,就算过滤成功,会返回文件名(用于确定此文件有没有这个内容)

-r 代表递归,通常跟l一起使用,后面跟着是文件夹;会把这个文件夹里的所有文件拿出来过滤,过滤出含有此值的所有文件名;

-rl 的使用场景:当有一堆的配置文件,但你只记得配置项而忘记这个配置项写在哪些文件里面的时候

grep -rl 'egg' /root 过滤出/root文件夹下哪些文件中含有egg字样(过滤的结果是文件名)

-v 过滤掉,即取反的含义(上面所讲的是过滤出想要的东西,此处是指过滤掉不要的东西,留下其他行)

二.过滤规则:正则过滤

正则过滤先记住三个简单的:

  • ^egg 代表以egg大头
  • egg$ 代表以egg结尾
  • egg 代表含有egg

三.grep支持管道

ps -aux 查看所有的进程信息

ps -aux | grep -n 'sshd' 过滤出进程中含有sshd的行

ps -aux | grep -n '[s]shd' 第一个字符s用中括号括起来,代表过滤出来的sshd的行中,去除掉由本条命令中grep产生的行(上图圈出来的),这与下面这条含义一样

ps -aux | grep -n 'sshd' | grep -v 'grep' -v代表过滤掉

kill -9 进程号 强制杀进程,比如:kill -9 10431

分类:

后端

标签:

操作系统

作者介绍

公众号:uncle39py
V1