grep使用:

1.参数说明

-a :将 binary 文件以text 文件的方式搜寻数据

-c :计算找到 '字符串'的次数

-i :忽略大小写的不同

-n :顺便输出行号

-v :反向选择,亦即显示出没有 '字符串'内容的那一行!

--color=auto :关键词部分加上颜色

2.查出/etc/passwd 里包含root的行

方式1

grep root /etc/passwd

方式2

cat /etc/passwd|grep root

3.显示行号

cat /etc/passwd|grep -n root

4.反取

cat /etc/passwd|grep -v root

5.忽略大小写

cat /etc/passwd|grep -i root

列子

取出不是root可以登录的用户

cat /etc/passwd|grep -inv root|grep -v nologin --color=auto

如果想给grep加上--color=auto 修改~/.bashrc加上alias grep='grep --color=auto' source~/.bashrc即可

6.搜索指定文件夹下包含某个字符串的(把包含的行显示出来)

grep "install" /root/

递归搜索root 及其子目录以及其字目录的子目录中包含install的行

grep -r "install" /root/

只显示子目录中包含install文件

grep -lr "install" /root/

7.使用正则

[a,b]两者中选一个 如

[^a]不是a

[^a-z]不是a到z 同理[^0-9] [^A-Z]

以上要与^a以a开头进行区分

空白行 ^$

2{5}-->22222

2{2,5}-->22 222 2222 22222

2{2,}-->22 222 22222 ...

8.grep扩展grep -e 或者 egrep :增加了额外的正则表达式元字符集

对于标准grep,如果在扩展元字符前面加\,grep会自动启用扩展选项-E。

使用egrep 多行

grep "then\+" /root/Install_Centos_LNMP_v.0.1.sh

egrep "then+" /root/Install_Centos_LNMP_v.0.1.sh