linux第八天
linux文本处理三剑客之grep
linux 第八天

grep

grep在7中是外部命令,是别名。6不是。在7中是等价于grep --color=auto。意思就是自动加注颜色.也可以在6中加上,具体修改路径下的.bashrc文件
grep是一个用来搜索输入的名称,可以是文件,也可以是通过键盘输入进来的标准输入,还支持-作为文件名称。直接输入grep是没用的,需带上字符grep abc,这时候就可以读取键盘输入。你输入的是没有abc连续,那么他不给你返回,比如aqqerf。只有当你输入中包含连续的abc才行,abcsasa这样。
可以带文件:grep UUID /etc/fstab。注意grep没有参数是区分大小写的
grep可以加引号也可以不加,在一些情况下是有区别的:
grepwhoami` /etc/passwd ` 这样是可以搜索用户名的- grep $USER /etc/passwd,他知道这个是个变量,但是加单引号不行,双引号可以(见上图)

-A3,后面的三行,比如grep -nA3 root /etc/passwd
-e 或 grep -e wang -e wang /etc/passwd
-w,匹配单词,比如说你有一个用户叫basher,你要是搜索grep bash /etc/passwd,bash也会帮你搜索出来,但是grep -w bash /etc/passwd,这样就不会,因为必须整个单词匹配
字母数字,下划线都是作为单词整体,除此之外别的单词都可以作为分割符
gerp -E = egrep(这个支持扩展的正则表达式),grep -F = fgrep(不支持正则)
正则表达式


比如我想匹配这出现的数字:grep "[[:digit:]]\+" -o /etc/centos-release


非空白或者非空行 grep "^[[:space:]]*$" f1 -v
其实最好久别用\b.
最重要的一点grep是输出所在行,
分组



linux第八天
http://www.kju147.com/2018/12/11/linux第八天/