
公众号: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