1.grep命令总结

[root@cacti ~]# cat zh888.txt  //查看zh888.txt内容
123
456
abc
def
def
[root@cacti ~]# grep -c "123" zh888.txt //打印123的行数为1行
1
[root@cacti ~]# echo "123456">>zh888.txt //在追加123456到zh888.txt文本中

[root@cacti ~]# grep -c "123" zh888.txt  //打印123的行数变为2
2
[root@cacti ~]# grep -v "123" zh888.txt //把123行不打印出来
456
abc
def
def
[root@cacti ~]# grep -n "123" zh888.txt //输出内容和行数
1:123
6:123456
[root@cacti ~]# grep [0-9] zh888.txt //grep0-9的数字
123
456
123456
[root@cacti ~]# grep -v [0-9] zh888.txt //去掉0-9
abc
def
def
[root@cacti ~]# grep '^1' zh888.txt   //,”^”表示行的开始,”$”表示行的结尾,那么空行则表示”^$”,
123
123456
[root@cacti ~]# grep 'f$' zh888.txt //过滤f结尾的内容
def
def
[root@cacti ~]# grep '^[^a-zA-Z]' zh888.txt //把数字全部过滤出来
123
456
123456
456789
234567
[root@cacti ~]# grep '1..4' zh888.txt    //“.”表示任意一个字符,上例中,就是把符合r与o之间有两个任意字符的行过滤出来。
123456

[root@cacti ~]# grep '123*' zh888.txt     //“*”表示零个或多个前面的字符。
123
123456

[root@cacti ~]# grep '.*' zh888.txt   //‘.*’表示零个或多个任意字符,空行也包含在内。
123
456
abc
def
def
123456
456789
234567

2.sed的命令总结
[root@cacti ~]# sed -n '1'p zh888.txt  //打印zh888.txt第一行内容
123

[root@cacti ~]# sed -n '1,3'p zh888.txt //打印1-3行的内容
123
456
abc

[root@cacti ~]# sed -n '/abc/'p zh888.txt //打印包含abc的字符串内容
abc

[root@cacti ~]# sed -n '/^1/'p zh888.txt //打印1开头的内容
123
123456

[root@cacti ~]# sed -n '/6$/'p zh888.txt //打印6结尾的内容
456
123456

[root@cacti ~]# sed -n '/1..4/'p zh888.txt //打印1..4的任意内容
123456

[root@cacti ~]# sed -n '/23*/'p zh888.txt  //大衣呢23结尾的任意内容
123
123456
234567

[root@cacti ~]# sed -e '1'p -e '/123/'p -n zh888.txt //打印123开头的内容
123
123
123456

[root@cacti ~]# sed '1'd zh888.txt //删除第一行内容
456
abc
def
def
123456
456789
234567

[root@cacti ~]# sed '2,$'d zh888.txt //删除2到结尾的所有内容
123

[root@cacti ~]# sed '1,3'd zh888.txt //删除1到3的内容
def
def
123456
456789
234567

[root@cacti ~]# sed '/123/'d zh888.txt //删除123的内容
456
abc
def
def
456789
234567

[root@cacti ~]# sed '1,2s/123/888/g' zh888.txt //1到2行的123替换成888以全局替换,/可以换成#或者@都是可以的。
888
456
abc
def
def
123456
456789
234567

[root@cacti ~]# sed 's/[0-9]//g' zh888.txt //把0到9数字全部过滤掉

abc
def
def

[root@cacti ~]# sed 's/[a-zA-Z]//g' zh888.txt //吧a-zA-Z的字母全部替换掉
123
456

123456
456789
234567

3.awk命令总结

[root@cacti ~]# echo "1:2:3">>zh888.txt //添加内容到zh888中去

[root@cacti ~]# echo "4:5:6:7">>zh888.txt //添加内容到zh888中区

[root@cacti ~]# tail -n2 zh888.txt |awk -F':' '{print $1}' //查看末尾2行利用管道和分隔符打印第一段字段内容。
1
4

[root@cacti ~]# tail -n2 zh888.txt |awk -F':' '{print $1"zh888"$2"zh888"}' //在第一字段和第二字段末尾加上zh888
1zh8882zh888
4zh8885zh888

[root@cacti ~]# tail -n2 zh888.txt |awk -F':' '{print "zh888"$1}' //在第一字段前面添加zh888内容
zh8881
zh8884

[root@cacti ~]# awk '/123/' zh888.txt //查找123内容
123
123456

[root@cacti ~]# awk -F':' '$1~/7/' zh888.txt  //让awk来匹配第一段7开头的数字
456789
234567

[root@cacti ~]# awk -F':' '/1/ {print $2} /2/ {print $3}' zh888.txt //利用awk连续匹配

2
3

[root@cacti ~]# awk -F':' '$2=="5"' zh888.txt
4:5:6:7
//利用逻辑判断等于来判断第二字段是否是5然后打印出来,awk中是可以用逻辑符号判断的,比如’==’就是等于,也可以理解为“精确匹配”。另外也有’>’, ‘>=’, ‘<’, ‘<=’, ‘!=’ 等等,值得注意的是,即使$3为数字,awk也不会把它当数字看待,它会认为是一个字符。所以不要妄图去拿$3当数字去和数字做比较。

[root@cacti ~]# awk '{print NR}' zh888.txt //利用分隔符分割一共多少段
1
2
3
4
5
6
7
8
9
10

[root@cacti ~]# awk '{print NF}' zh888.txt //一共有多少行
1
1
1
1
1
1
1
1
1
1

[root@cacti ~]# awk 'NR>=5' zh888.txt //大于5的行数打印出来
def
123456
456789
234567
1:2:3
4:5:6:7

本文转自zh888 51CTO博客,原文链接:http://blog.51cto.com/zh888/1401355,如需转载请自行联系原作者

正则表达式grep sed awk总结相关推荐

  1. 正则表达式与扩展正则表达式(grep, sed, awk)

    Linux中用来在文件中搜索字符串的命令,如grep, sed, awk等命令支持正则表达式与扩展正则表达式. 1. 基础正则表达式 符号 解释 示例 * 匹配0次或多次 b.*t . 匹配任意字符 ...

  2. linux grep sed awk

    linux 文本编辑命令grep sed awk(转)     grep grep (global search regular expression(RE) and print out the li ...

  3. linux三剑客及正则表达(grep,sed,awk)

    首先我们现在知道Linux下一切皆文件,对Linux的操作就是对文件的处理,那么怎么能更好的处理文件呢?这就要用到我们上面的三剑客命令. 在说这三个命令前我们要插入一个小插曲就是"正则表达式 ...

  4. Shell ❀ 三剑客 - Grep + Sed + Awk

    文章目录 八.三剑客 - Grep + Sed + Awk 1.Grep - 过滤 1.1 常用grep参数 1.2 使用方法 2.Sed - 行匹配 2.1 执行原理 2.2 常见语法 2.3 使用 ...

  5. 三剑客grep sed awk

    三剑客 正则(RE)表达式 应用场景 规则 注意事项 正则符号 基础正则 扩展正则 正则实例 正则 VS 通配符 三剑客 grep sed sed核心应用 awk awk执行过程 内置变量 awk 正 ...

  6. Linux高级专题详解--shell编程大全(shell变量,if语句,case语句,for循环,while循环,函数调用,数组,正则表达式,shell脚本三剑客--grep,sed,awk家族)

    shell编程 初始shell 程序 语言 编程 ---------------------------------- 语言 自然语言:汉语.英语 计算机语言:c语言.c++.(java php py ...

  7. 【Linux】 字符串和文本处理工具 grep sed awk

    Linux字符串&文本处理工具 因为用linux的时候主要用到的还是字符交互界面,所以对字符串的处理变得十分重要.这篇介绍三个常用的字符串处理工具,包括grep,sed和awk ■ grep ...

  8. grep, sed, awk

    这几个工具是shell中非常好用的文本流处理工具,可以进行查找,编辑或者分析等工作,它们都支持正则表达式,也支持使用shell内置的变量 grep grep是一个字符串比较工具,用于从文件中提取满足条 ...

  9. linux 文本编辑命令grep sed awk

    grep grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具 ...

最新文章

  1. layer-list:Android中layer-list使用详解
  2. zookeeper简介以及C客户端用法
  3. 赫塔•米勒获诺贝尔文学奖说明了什么?
  4. c语言,在主函数中输入一个整数,求该整数各位数字的乘积,[求助]求由键盘输入的任意两个整数的积...
  5. mysql系统变量配置文件_MySQL系统变量配置基础
  6. [swift 进阶]读书笔记-第八章:错误处理 C8P3 带有类型的错误
  7. 递归计算二叉树的叶子节点个数
  8. linux拷贝文件后几百行,我 的 一 些 练 习 题
  9. 注册csdn博客步骤
  10. mysql查询学生成绩语句_SQL查询成绩之精典语句
  11. 汽车CAN总线技术详解
  12. 推荐免费下载华软源码430套大型企业管理源码,下载地址:http://www.hur.cn/tg/linkin.asp?linkid=205389 源码语言:PB/Delphi/VB/Java/.Ne
  13. 谈谈产品与运营之 - 润物细无声
  14. Linux 查看MAC地址
  15. 聊下git merge --squash
  16. 分布式系统论文精读2:GFS
  17. 论坚持的力量-知耻后勇
  18. 2023最新SSM计算机毕业设计选题大全(附源码+LW)之java高校学科竞赛管理系统eolh8
  19. TLE两行数与轨道六根数转换
  20. 经典的足球明星广告--[困兽斗]

热门文章

  1. 2000坐标转换成经纬度_ArcGIS中的坐标问题快问快答
  2. 处理机调度实验总结_计算机系统结构总结
  3. anaconda怎么运行python程序_Heartrate:如追综心跳般实时动态可视化监测Python程序运行...
  4. jquery拼接后css样式不生效_JQuery常用选择器以及操作属性和样式的方法介绍
  5. lsqcurvefit拟合结果为复数_非线性拟合怎么转化为线性拟合?
  6. linux java远程调试_Visual Studio 2017 Linux远程调试(gdbserver)
  7. php 工商银行公众号支付代码_微信支付PHP SDK —— 公众号支付代码详解
  8. 百度搜索打不开第二页_北易信息:百度爱采购适合做优化推广吗
  9. Python爬虫==【openurl】
  10. w3wp进程发生死锁ISAPI aspnet