第6周第4次课(4月26日)

课程内容:

9.4/9.5 sed

9.4/9.5 sed

操作实例如下

sed和grep比较起来,sed也可以实现grep的功能,但是没有颜色显示,sed强项是替换一些指定的字符。

sed  实现匹配的功能

[root@jimmylinux-002 sed]# sed '/root/'p test.txt  把文件所有内容都打印出来

[root@jimmylinux-002 sed]# sed -n '/root/'p test.txt

这样就可以只匹配关键词内容,其他无关的不打印出来。

同样也支持.、*、+、花括号这样的选项

打印指定的行

sed -e    不仅要把指定的第几行打印出来,还要匹配满足的字符串。

sed -e匹配一次,后面的root有符合一次,所以打印出来2行一样的内容。

[root@jimmylinux-002 sed]# sed -n '/bus/'Ip test.txt

加大写I也可以不区分大小写,会把带bus无论大小写的都打印出来。

使用d选项可以删除指定的行

[root@jimmylinux-002 sed]# sed -i '/user2/'d test.txt  把user2相关的行删除

[root@jimmylinux-002 sed]# sed '1,10s/root/toor/g' test.txt  s表示替换,g表示全局,把root替换成toor。

[root@jimmylinux-002 sed]# sed -r '1,10s/ro+/r/g' test.txt  支持正则表达式去查找替换

[root@jimmylinux-002 sed]# head test.txt |sed -r 's/([^:]+):(.*):([^:]+)/\3:2:\1/'

把第一段和最后一段交换,就是root和bin/bash、bin和sbin/nologin 顺序前后交换。

[root@jimmylinux-002 sed]# head test.txt |sed 's/[a-zA-Z]//g'

把文档里面所有的英文字母全部删除掉,最后就只剩数字和一些特殊符号了。

[root@jimmylinux-002 sed]# head test.txt |sed -r 's/(.*)/aaa:&/'

在所有行前面加上一个固定的字符串

sed 使用介绍的更多相关文章

  1. unix的sed 用法介绍

    sed是一个非交互性性文本编辑器,它编辑文件或标准输入导出的文件拷贝.标准输入可能是来自键盘.文件重定向.字符串或变量,或者是一个管道文件.sed可以随意编辑小或大的文件,有许多sed命令用来编辑.删 ...

  2. Linux centos7 sed工具介绍

    一.sed上 grep工具功能只能实现查找,不能把查找的内容替换. sed本身是一个管道命令,主要是以行为单位进行处理,可以将数据行进行查找.删除.替换字符或字符串.调换字符串位置.直接修改文件内容等 ...

  3. sed命令使用介绍(转载)

    sed命令介绍 (转自:http://www.cnblogs.com/ggjucheng/archive/2013/01/13/2856901.html) 简介 sed 是一种在线编辑器,它一次处理一 ...

  4. Linux的sed命令

    一.初识sed 在部署openstack的过程中,会接触到大量的sed命令,比如 # Bind MySQL service to all network interfaces.sed -i 's/12 ...

  5. linux sed命令

    一.初识sed 在部署openstack的过程中,会接触到大量的sed命令,比如 # Bind MySQL service to all network interfaces. sed -i 's/1 ...

  6. sed命令使用记录

    背景:文件A,文件B,文件格式一致,有两列,第一列为key,第二列为value. 目的:将文件A中的内容插入到文件B中,不能在最后,不能有重复key(我的key和value用tab键分割) 实现:我的 ...

  7. linux-shell脚本命令之sed

    [ sed简单介绍: ] sed是一个非常好的文件处理工具, 它本身是一个管道命令, 以行为单位进行处理, 能够用于对数据行进行新增.选取.替换.删除等操作. sed命令行格式:sed [-nefri ...

  8. sed命令针对文件操作具体解释

    Linux的简单shell脚本中改动文件操作 1.Sed简单介绍 sed 是一种在线编辑器,它一次处理一行内容.处理时.把当前处理的行存储在暂时缓冲区中,称为"模式空间"(patt ...

  9. LINUX系统下的shell命令---grep、sed、awk

    1)grep文本过滤命令 1.grep基本认识 (Global  search  regular expression and  print  out the  line全局搜索研究正则表达时并显示出 ...

随机推荐

  1. CSPS模拟 78

    大敛好稳啊..居然在模拟赛拿了540.. 有点畏惧.jpg 而我就是什么什么不行级人物了.. 真正在联赛拉开那么多分怎么追啊.. T1kmp?hash? T2 概率小到炸精时,对答案也就没贡献了 然后 ...

  2. ElasticSearch(三):通分词器(Analyzer)进行分词(Analysis)

    ElasticSearch(三):通过分词器(Analyzer)进行分词(Analysis) 学习课程链接<Elasticsearch核心技术与实战> Analysis与Analyzer ...

  3. 两张图弄懂函数的递归(以golang为例)

    函数递归时要遵守的原则: 执行一个函数时,就要创建一个新的受保护的独立空间(新函数栈) 函数的局部变量是独立的,不会相互影响: 递归必须向退出递归的条件逼近,否则就会无限递归: 当一个函数执行完毕,或 ...

  4. Java设计模式之模板方法模式(Template)

    前言: 我们在开发中有很多固定的流程,这些流程有很多步凑是固定的,比如JDBC中获取连接,关闭连接这些流程是固定不变的,变动的只有设置参数,解析结果集这些是根据不同的实体对象“来做调整”,针对这种拥有 ...

  5. [.NET] 常用的reusable library

    1. NAudio NAudio is an open source .NET audio and MIDI library, containing dozens of useful audio re ...

  6. pdf2eps implement

    Well, I used the command pdftops in the LaTeX distribution such as MiKTeX/TeXLive/CTex to implement ...

  7. Zabbix-(四)邮件、钉钉告警通知

    Zabbix-(四)邮件.钉钉告警通知 一.前言 在之前的文章里,通过Zabbix对主机的磁盘.CPU以及内存进行了监控,并在首页Dashboard里创建了监控图形,但是只有当我们登录到Zabbix后 ...

  8. deepin MySQL 安装以及编码格式的修改utf-8

    deepin MySQL 安装以及编码格式的修改utf-8: 1.sudo apt-get install mysql-server mysql-client 2.sudo mysql -u root ...

  9. nyoj 22-素数求和问题(打表)

    22-素数求和问题 内存限制:64MB 时间限制:3000ms Special Judge: No accepted:41 submit:52 题目描述: 现在给你N个数(0<N<1000 ...

  10. 安装Fedora后

    更新操作系统版本: https://fedoraproject.org/wiki/DNF_system_upgrade    靠谱: 设置ssh:ssh生成公钥私钥.默认root(.ssh/confi ...