ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

文本三剑客

文本三剑客

grep命令

# 选项
-Ax 显示行数  # 显示匹配到的后几行-Bx 显示行数  # 显示匹配到的前几行-Cx 显示行数  # 显示匹配到前后几行-i  # 忽略大小写-q  # 静默输出-n  # 显示行号-o  # 只输出文件中匹配到的部分-v  # 显示除了匹配之外的所有行-c  # 输出匹配字符串中的行数-r  # 递归的进行搜索,显示文件名和文件内容-l  # 列出包含匹配字段的文件即可,不需要输出文本内容-E # 使用正则表达式  与egrep命令一样# 元字符^  # 以什么开头的行,匹配 ^root 匹配以root开头的行$  # 以什么结尾的行,root$ 匹配以root结尾的行.  # 匹配一个任意的字符  gr.p  匹配gr后面的任意字符字符*  # 匹配0个或者多个字符连接前面字符 r* 匹配0个r或者多个r字符.* # 匹配任意字符   gr.* 匹配gr后面的任意字符或者0个字符[abc] # 匹配abc中的任意一个字符[^abc]  # 不匹配abc中的任意一个字符[a-z]   # 匹配a-z里面的字符\<  # 匹配以这个字开头的字,这个是一个单词字符,左边是一个非单词字符,右边是一个单词字符,\>  # 匹配以这个字结尾的字  左边是单词字符,右边是非单词字符\  # 取消后面单个字符的特殊含义# 扩展正则+ # 对前面一项匹配1次或者多次? # 对前面一项匹配0次或者1次{j}  # 对前面一项最多匹配j次{,j}  # 对前面一项最多匹配j次{j,}  # 对前面一项最少匹配j次{j,k}  # 最少匹配j次,最多匹配k次a|b  # 可以匹配a或者b(exp) # 将这个exp作为一个整体来匹配
# 递归的搜索 显示文件内容包含root的文件名
[root@master ~]# grep -rl root /etc/passwd
/etc/passwd# 显示不包含root的所有行
[root@master ~]# egrep  -v  root /etc/passwd# 匹配root忽略大小写
[root@master ~]# grep -i root /etc/passwd# 匹配root这个字开头的
[root@master ~]# grep  "\<root" passwd 
root:x:0:0:root:/root:/bin/bash# 匹配root这个字结尾的
[root@master ~]# grep "ot\>" passwd 
root:x:0:0:root:/root:/bin/bash# 匹配root这个字
[root@master ~]# grep  "\<root\>" passwd 
root:x:0:0:root:/root:/bin/bash# 匹配r后面的所有字符,.是匹配r后面的任意字符,*就是匹配r后面的所有字符了
[root@master ~]# grep  "r.*" passwd 
root:x:0:0:root:/root:/bin/bash
adm:x:3:4:adm:/var/adm:/sbin/nologin# 多次匹配r或者0次r的也匹配到
[root@master ~]# grep r* passwd 
root:x:0:0:root:/root:/bin/bash# 匹配ip地址ifconfig |  egrep -o '([0-9]{1,3}\.){3}[0-9]{1,3}' | egrep -v '^255|255$'

sed命令

  • 主要就是对于这个文本文件进行修改

awk命令

·

返回列表