grep
-v 排除匹配的内容(取反)
-E 支持扩展的正则表达式 ------可以不使用转义符号\
-i 忽略大小写
-o 只输出匹配的内容 ----默认输出含有匹配内容的正行
--color=auto 匹配的内容显示颜色
-n 显示行号
-----------------------------------------------------------------------------------
sed
d:删除符合条件的行;
p:显示符合条件的行;
a \string 指定行后追加;
i \string 在指定行前添加;
s/pattern/string/[g 全局替换 i 忽略大小写]:
查找并替换 s/// s### s@@@ & 引用模式匹配的
-n 只显示符合条件的
-i 修改源文件
-r 使用扩展正则表达式
删除:
sed '2,5d' test.txt 显示出test.txt内容,除了第2到5行
增加:
sed '5a xxx' test.txt 在第5行后面增加一行xxx
替换:
sed 's/old/new/g' test.txt (全局替换)将test.txt中含有old的替换为new
sed '1,3s/old/new/g' test.txt (只替换1到3行相关内容)
-----------------------------------------------------------------------------------
awk
针对列进行截取
cat /etc/passwd|awk -F ':' '{print $1}' 利用管道符对前面查到的数据进行处理,-F后面是代表按:分割行,$1代表分割后的第一个数据
cat -n /etc/passwd|awk -F ':' '{print $1 "\t" NR "\t" NF}'
NR代表处理的是第几行,第一行就是1,第二行就是2…………
NF 代表一行中分了几段
FS 代表目前的分割字符,上面就是:
-----------------------------------------------------------------------------------