awk,grep,sed文本格式化处理

Posted suffergtf

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了awk,grep,sed文本格式化处理相关的知识,希望对你有一定的参考价值。

一、awk取列

[[email protected] ~]# cat /etc/passwd|awk -F : {print $1"\t\t"$7}‘  ###-F指定分隔符
root        /bin/bash
bin        /sbin/nologin
daemon        /sbin/nologin
adm        /sbin/nologin
lp        /sbin/nologin

二、grep文本搜索工具

[[email protected] ~]# grep test /etc/passwd    #####在文件中查找含有test字段的行
test3:x:1002:1002::/home/test3:/bin/bash
suffergtf:x:1003:1003::/test/suffergtf:/bin/bash
test2:x:1004:1004::/home/test2:/bin/bash
test:x:1005:1005::/home/test:/bin/bash
[[email protected] ~]# grep nginx /etc/*  #####再多个文件中查找含有test字段的文件和行
/etc/group:nginx:x:500:
/etc/group-:nginx:x:500:
/etc/gshadow:nginx:!::
/etc/gshadow-:nginx:!::
[[email protected] ~]# grep -v "test" /etc/passwd      #####-v 排除test字段
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin

三、sed字符串替换

[[email protected] ~]# cat /tmp/test.sh 
for n in `seq 100000`;do echo $n>>/tmp/test.txt;sleep 1;done
[[email protected] ~]# sed -i s/100000/1/g /tmp/test.sh       ########直接在文本中将字符串100000替换为1,
[[email protected] ~]# cat /tmp/test.sh 
for n in `seq 1`;do echo $n>>/tmp/test.txt;sleep 1;done

 

常用记忆,持续更新

以上是关于awk,grep,sed文本格式化处理的主要内容,如果未能解决你的问题,请参考以下文章

Linux文本处理三剑客grepsedawk用法详解

Linux三剑客grep/sed/awk

Shell文本处理工具(Linux三剑客 grep sed awk )

Linux的文本处理工具浅谈-awk sed grep

文本处理三剑客之gawk

linux文本处理绝世好剑--awk