grep sed awk

Posted playforever

tags:

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

grep命令用于查找文件里符合条件的字符串。

[[email protected] tmpdata]# grep ‘shenzhen‘ *.txt   
hivelog.txt:tianyongtao 1       50      shenzhen
hivelog.txt:wangwu      1       85      shenzhen
hivelog.txt:zhangsan    1       20      shenzhen
hivelog.txt:liuqin      0       56      shenzhen
hivelog.txt:wangwu      0       47      shenzhen
hivelog.txt:liuyang     1       32      shenzhen

[[email protected] tmpdata]# grep ‘shenzhen‘ hivelog.txt
tianyongtao     1       50      shenzhen
wangwu  1       85      shenzhen
zhangsan        1       20      shenzhen
liuqin  0       56      shenzhen
wangwu  0       47      shenzhen
liuyang 1       32      shenzhen

[[email protected] tmpdata]# grep ‘shenzhen‘ hivelog.txt hivelog1.txt
hivelog.txt:tianyongtao 1       50      shenzhen
hivelog.txt:wangwu      1       85      shenzhen
hivelog.txt:zhangsan    1       20      shenzhen
hivelog.txt:liuqin      0       56      shenzhen
hivelog.txt:wangwu      0       47      shenzhen
hivelog.txt:liuyang     1       32      shenzhen
hivelog1.txt:tianyongtao        1       50      shenzhen
hivelog1.txt:wangwu     1       85      shenzhen
hivelog1.txt:zhangsan   1       20      shenzhen
hivelog1.txt:liuqin     0       56      shenzhen
hivelog1.txt:wangwu     0       47      shenzhen
hivelog1.txt:liuyang    1       32      shenzhen

[[email protected] tmpdata]# grep ‘shenzhen‘ hivelog.txt hivelog1.txt |grep ‘wangwu‘
hivelog.txt:wangwu      1       85      shenzhen
hivelog.txt:wangwu      0       47      shenzhen
hivelog1.txt:wangwu     1       85      shenzhen
hivelog1.txt:wangwu     0       47      shenzhen

 sed命令是利用script来处理文本文件。

sed可依照script的指令,来处理、编辑文本文件。

Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。

sed :实现数据的替换,删除,增加,选取等(以行为单位进行处理)

[[email protected] tmpdata]# cat tian.txt
name tian
[[email protected] tmpdata]# sed -i "1i/sex 1" tian.txt   //第一行添加一条记录
[[email protected] tmpdata]# cat tian.txt              
/sex 1
name tian
[[email protected] tmpdata]# sed -i "1isex 1" tian.txt  //第一行添加一条记录
[[email protected] tmpdata]# cat tian.txt             
sex 1
/sex 1
name tian
 [[email protected] tmpdata]# sed -i "2ilevel 45" tian.txt     //第二行添加一条记录        
[[email protected] tmpdata]# cat tian.txt
sex 1
level 45
/sex 1
name tian

[[email protected] tmpdata]# echo "home henan">>tian.txt  //尾部添加一条记录
[[email protected] tmpdata]# cat tian.txt
sex 1
level 45
/sex 1
name tian
home henan

 sed并不会修改原文件中的内容,除非重定向新文件

[[email protected] tmpdata]# cat tian.txt
sex 1
level 45
/sex 1
name tian
home henan
[[email protected] tmpdata]# sed ‘3d‘ tian.txt //删除第三行内容
sex 1
level 45
name tian
home henan

[[email protected] tmpdata]# sed ‘3,5d‘ tian.txt//删除3-5行的记录
sex 1
level 45

$表示最后,末尾

[[email protected] tmpdata]# sed ‘$d‘ tian.txt  //删除最后一行
sex 1
level 45
/sex 1
name tian

[[email protected] tmpdata]# sed -i ‘$i age 85‘ tian.txt //最后一行位置添加一条记录,原来的最后一行推后
[[email protected] tmpdata]# cat tian.txt
sex 1
level 45
/sex 1
name tian
age 85
home henan

 










































































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

文本处理三剑客之AWK

gawk

2018-08-18

2018-1-15 6周1次课 grep

awk的基本概念,基础用法和高级用法

gawk命令详解