三剑客之SED
- Sed功能说明
[root@old ~]# sed --version #→ sed软件版本
GNU sed version 4.2.
- 命令执行流程
- 语法格式
- 指定执行的地址范围
- 增删改查 功能
[root@admin ~]# sed '2a 106,dandan,CSO' text.txt
,old,CEO
,zhang,CTO
,dandan,CSO
,Alex,COO
,yy,CFO
,feixue,CIO
[root@admin ~]# sed '2i 106,dandan,CSO' text.txt
,old,CEO
,dandan,CSO
,zhangyao,CTO
,Alex,COO
,yy,CFO
,feixue,CIO
- 删
[root@admin ~]# sed 'd' person.txt
[root@admin ~]#
[root@admin ~]# sed '2d' person.txt
,admn,CEO
,Alex,COO
,yy,CFO
,feixue,CIO
- 改
[root@admin ~]# sed '2c 106,dandan,CSO' person.txt
,admin,CEO
,dandan,CSO
,Alex,COO
,yy,CFO
,feixue,CIO
文本替换
[root@admin ~]# sed '3s#0#9#' text.txt
,admin,CEO
,zhang,CTO
,Alex,COO
,yy,CFO
,feixue,CIO
- 分组替换\( \)和\1的使用说明
[root@old ~]# echo I am old teacher. |sed 's#^.*am \([a-z].*\) tea.*$#\1#g'
old
[root@old ~]# echo I am old teacher. |sed -r 's#^.*am ([a-z].*) tea.*$#\1#g'
old
[root@old ~]# echo I am old teacher. |sed -r 's#I (.*) (.*) teacher.#\1\2#g'
amold
- 特殊符号&代表被替换的内容
[root@admin ~]# sed '1,3s#C#--&--#g' person.txt #→此处&等于C
,admin,--C--EO #→将1到3行的C替换为--C--
,zhang,--C--TO
,yy,--C--OO
,feixue,CFO
,dandan,CIO
- 查
admin[root@oldboy ~]# sed -n '2p' text.txt
,zhang,CTO
- sed模式空间
#cat test.txt
This is
This is
This is
This is
This is
sed -n 'N;P' test.txt -----因为读取第5行时,执行N,发现没有第6行,不满足,就退出,放弃P命令
This is
This is
sed -n ‘$!N;P’ test.txt
This is
This is
This is
注释:读取1,$!条件满足(不是尾行),执行N命令,得出1\n2,执行P,打印得1,读取3,$!条件满足(不是尾行),执行N命令,得出3\n4,执行P,打印得3,读取5,$!条件不满足,跳过N,执行P,打印得5
[root@localhost ~]# sed ‘n;d’ a.txt
This is
This is
This is
注释:读取1,执行n,得出2,执行d,删除2,得空,以此类推,读取3,执行n,得出4,执行d,删除4,得空,但是读取5时,因为n无法执行,所以d不执行。因无-n参数,故输出1\n3\n5
[root@localhost ~]sed ‘N;D’ test.txt
This is
三剑客之SED的更多相关文章
- 文本处理三剑客之sed命令
第十八章.文本处理三剑客之sed命令 目录 sed介绍 sed命令常用选项 sed常用编辑命令 sed使用示例 sed高级语法 18.1.sed简介 sed全名stream editor,流编辑器,s ...
- Linux实战教学笔记12:linux三剑客之sed命令精讲
第十二节 linux三剑客之sed命令精讲 标签(空格分隔): Linux实战教学笔记-陈思齐 ---更多资料点我查看 1,前言 我们都知道,在Linux中一切皆文件,比如配置文件,日志文件,启动文件 ...
- (转)不看绝对后悔的Linux三剑客之sed实战精讲
不看绝对后悔的Linux三剑客之sed实战精讲 原文:http://blog.51cto.com/hujiangtao/1923718 二.Linux三剑客之sed命令精讲 1,前言 我们都知道,在L ...
- shell编程系列13--文本处理三剑客之sed利用sed追加文件内容
shell编程系列13--文本处理三剑客之sed利用sed追加文件内容 追加用法总结: .a 在匹配行后面追加 .i 在匹配行前面追加 .r 将文件内容追加到匹配行后面 .w 将匹配行写入指定文件 追 ...
- shell编程系列12--文本处理三剑客之sed利用sed修改文件内容
shell编程系列12--文本处理三剑客之sed利用sed修改文件内容 修改命令对照表 编辑命令 1s/old/new/ 替换第1行内容old为new ,10s/old/new/ 替换第1行到10行的 ...
- shell编程系列11--文本处理三剑客之sed利用sed删除文本中的内容
shell编程系列11--文本处理三剑客之sed利用sed删除文本中的内容 删除命令对照表 命令 含义 1d 删除第一行内容 ,10d 删除1行到10行的内容 ,+5d 删除10行到16行的内容 /p ...
- shell编程系列10--文本处理三剑客之sed利用sed查询特定内容
shell编程系列10--文本处理三剑客之sed利用sed查询特定内容 利用sed查找文件内容: pattern种类: .8p .,10p .,+5p ./regexp/p .,/regexp/p . ...
- shell编程系列9--文本处理三剑客之sed概述及常见用法总结
shell编程系列9--文本处理三剑客之sed概述及常见用法总结 sed的工作模式:对文本的行数据一行行处理,如下图 sed(stream editor),是流编辑器,依据特定的匹配模式,对文本逐行匹 ...
- day14 linux三剑客之sed命令
day14 linux三剑客之sed命令 sed命令 Sed 主要用来自动编辑一个或多个文件.简化对文件的反复操作.编写转换程序等. sed(流式编辑器) : sed主要用来修改文件. 1.sed命令 ...
- 文本处理的命令,三剑客之sed
文本处理的命令 1.sort命令 "用于将文件内容加以排序" 参数: -n :按照数值的大小排序 -r :以相反的顺序来排序 -k :以某列进行排序 -t :指定分隔符,默认是以空 ...
随机推荐
- MFC的几处坑
本人愚笨,一个滚动条控件还让我研究了几天,记录下成果. 1. GetScrollRange();获取滚动条的范围,个人觉得用意不大. GetScrollLimit();获取滚动按钮活动的范围 Scro ...
- Spring源码学习之: 通过Spring @PostConstruct 和 @PreDestroy 方法 实现初始化和销毁bean之前进行的操作
关于在spring 容器初始化 bean 和销毁前所做的操作定义方式有三种: 第一种:通过@PostConstruct 和 @PreDestroy 方法 实现初始化和销毁bean之前进行的操作 第二 ...
- HTML的文本格式化
文本格式化:<html> <body> <b>This text is bold</b> <br /> <strong>This ...
- 解决ideviceinstaller未安装的问题
在Mac上,使用Appium时提示: Could not initialize ideviceinstaller; make sure it is installed and works on you ...
- 【python】调用机器喇叭发出蜂鸣声(Beep)
##coding:utf-8 import winsound winsound.Beep(600,6000) #其中600表示声音大小,1000表示发生时长,1000为1秒
- WeX5 - AJAX跨域调用相关知识-CORS和JSONP
http://docs.wex5.com/ajax-cross-domain/ 1.什么是跨域 跨域问题产生的原因,是由于浏览器的安全机制,JS只能访问与所在页面同一个域(相同协议.域名.端口)的内容 ...
- Mysql大范围分页优化案例
在BBS线上业务抓到如下分页SQL: meizu_bbs meizu_bbs Query Sending data , meizu_bbs meizu_bbs Query Sending data , ...
- js预解析及特效
预解析: // 作用域: // 域:空间.范围.区域…… // 作用:读.写 script 全局变量.全局函数 自上而下 函数 由里到外 {} 浏览器: “JS解析器” 1)“找一些东西” :var ...
- Scss开发临时学习过程
SCSS语法: 假设变量申明带有!default,那么如果在此申明之前没有这个变量的申明,则用这个值,反之如果之前有申明,则用申明的值. ‘...’传递多个参数: @mixin box-shadow( ...
- EXCEL日期间隔函数
=DATEDIF(D3,TODAY(),"M") 日期一列有逗点,有横线,excel建议日期用横杠. 首先将日期列选择日期格式. 其次通过查找替换,将.换为- 之后用=DATEDI ...