sed 命令总结
sed是Stream Editor的缩写,是操作、过滤、转换文本内容的强大工具,对文件实现增删改查
主要参数
- -n 取消默认输出
- -i 修改保存文件
内置命令字符
a,append追加
d,delete,删除
i,insert,插入一行或者多行文本
p,print,打印输出
s#/regexp#replace 正则匹配输出
实例:
.追加文本
[root@t1 ~] #cat >persons.txt << EOF
> ,oldboy,CEO
> ,zhangyao,CEO
> ,Alex,COO
> ,yy,CFO
> ,feixue,CIO
> EOF
[root@t1 ~] #
[root@t1 ~] #
[root@t1 ~] #
[root@t1 ~] #sed '2a 106,heqiuyu' persons.txt
,oldboy,CEO
,zhangyao,CEO
,heqiuyu
,Alex,COO
,yy,CFO
,feixue,CIO .行前查入
[root@t1 ~] #sed '2a 106,heqiuyu' persons.txt
,oldboy,CEO
,zhangyao,CEO
,heqiuyu
,Alex,COO
,yy,CFO
,feixue,CIO
[root@t1 ~] #sed '2i,qiuyu' persons.txt
,oldboy,CEO
,qiuyu
,zhangyao,CEO
,Alex,COO
,yy,CFO
,feixue,CIO .删除一样指定文本
[root@t1 ~] #sed '2i,qiuyu' persons.txt
,oldboy,CEO
,qiuyu
,zhangyao,CEO
,Alex,COO
,yy,CFO
,feixue,CIO
[root@t1 ~] #sed '2d' persons.txt
,oldboy,CEO
,Alex,COO
,yy,CFO
,feixue,CIO .删除2-3行
[root@t1 ~] #sed '2d' persons.txt
,oldboy,CEO
,Alex,COO
,yy,CFO
,feixue,CIO
[root@t1 ~] #sed '2,3d' persons.txt
,oldboy,CEO
,yy,CFO
,feixue,CIO
[root@t1 ~] # .替换文本内容
[root@t1 ~] #sed 's#yy#heqiuyu#g' persons.txt
,oldboy,CEO
,zhangyao,CEO
,Alex,COO
,heqiuyu,CFO
,feixue,CIO .打印文件指定行
[root@t1 ~] #sed '1p' persons.txt
,oldboy,CEO
,oldboy,CEO
,zhangyao,CEO
,Alex,COO
,yy,CFO
,feixue,CIO
[root@t1 ~] #sed '1p' persons.txt -n
,oldboy,CEO
[root@t1 ~] # .追加多行
[root@t1 ~] #cat persons.txt
,oldboy,CEO
,zhangyao,CEO
,Alex,COO
,yy,CFO
,feixue,CIO
[root@t1 ~] #sed '2a 11\n22\n33' persons.txt
,oldboy,CEO
,zhangyao,CEO ,Alex,COO
,yy,CFO
,feixue,CIO
sed 命令总结的更多相关文章
- 文本处理三剑客之sed命令
第十八章.文本处理三剑客之sed命令 目录 sed介绍 sed命令常用选项 sed常用编辑命令 sed使用示例 sed高级语法 18.1.sed简介 sed全名stream editor,流编辑器,s ...
- linux shell 用sed命令在文本的行尾或行首添加字符
转自 http://www.cnblogs.com/aaronwxb/archive/2011/08/19/2145364.html 昨天写一个脚本花了一天的2/3的时间,而且大部分时间都耗在了sed ...
- linux sed命令详解
简介 sed 是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的 ...
- sed命令详解
搜索 纠正错误 添加实例 sed 功能强大的流式文本编辑器 补充说明 sed 是一种流编辑器,它是文本处理中非常中的工具,能够完美的配合正则表达式使用,功能不同凡响.处理时,把当前处理的行存储在临时 ...
- Linux安全基础:sed命令的使用
sed 是一个很好的文件处理工具,本身是一个管道命令,主要是以行为单位进行处理,可以将数据行进行替换.删除.新增.选取等特定工作. Sed本质上是一个编辑器,但是它是非交互式的,这点与VIM不同:同时 ...
- [转]sed命令详解
转载:http://blog.chinaunix.net/u/22677/showart_1076318.html 1.简介 sed是非交互式的编辑器.它不会修改文件,除非使用shell重定向来保 ...
- sed命令
sed是一个很好的文件处理工具,本身是一个管道命令,主要是以行为单位进行处理,可以将数据行进行替换.删除.新增.选取等特定工作,下面先了解一下sed的用法sed命令行格式为: sed ...
- sed 命令使用
ios 的sed 命令 跟linux sed 命令有区别 # 所有的a 替换成b sed -i "" 's/a/b/g' #删除掉所有包含a的行 sed -i "/a/ ...
- sed命令给文本文件的每行的行首或者行尾添加文字
在每行的头添加字符,比如"HEAD",命令如下: sed 's/^/HEAD&/g' test.file 在每行的行尾添加字符,比如“TAIL”,命令如下: sed 's/ ...
- Linux的sed命令
一.初识sed 在部署openstack的过程中,会接触到大量的sed命令,比如 # Bind MySQL service to all network interfaces.sed -i 's/12 ...
随机推荐
- mfc动态控件生成
1.变量.函数声明 std::vector<CButton*>pBtn; afx void OnBtnClik(UINT uID);//回调函数 2.分配空间 pBtn.resize(50 ...
- topcoder srm 600 div1
problem1 link 首先,如果一个数字的某一位是1但是$goal$的这一位不是1,那么这个数字是不用管它的.那么对于剩下的数字,只需要统计在$goal$为1的位上,这些数字对应位上也是1的数字 ...
- Mysql 5.7--ubuntu18.04 安装过程及遇到的问题
Mysql 5.7安装过程 1. 下载mysql的apt-config文件 a. https://dev.mysql.com/downloads/file/?id=477124 b. 点击downlo ...
- centos7.5升级openssh7.4到7.9
漏洞扫描工具扫描出openssh用户枚举漏洞,搜索资料得知无补丁和升级包,解决这个漏洞得安装漏洞修复之后的版本version>7.8. 环境 linux版本: CentOS Linux rele ...
- Markdown介绍
如何使用.md文件 本文档为Markdown格式,建议利用Visual Studio Code+ Markdown All in One插件修改.参考链接:基础mdbasic,高级mdextended
- Ubuntu 下将 svg 图片转换为其他格式 (如 png)
参考 How to Convert SVG Files to other Image Formats on Ubuntu 12.04/11.10 Ubuntu 下将 svg 图片转换为其他格式 (如 ...
- IDEA ----Apachemaven连接私服,mavenWed工程 、以及Tomcat配置和项目的部署
1.Apachemaven连接私服, 首相先下载Apachemaven文件(压缩包和解压后的) 打开maven下的conf文件下的settin.xml, 配置setting.xml文件 其他信息随便写 ...
- 关于 Expression is not assignable 错误
1.在 Build Phases中导入 UIKit.framework 2.在pch中导入头文件 #import <UIKit/UIKit.h> 3.写一个分类 即可解决 贴出分类代码 ...
- UVA10163 Storage Keepers (动态规划)
$dp[i][j]$表示前$i$个仓库由前$j$个人来守卫能取得的最大安全值: $cost[i][j]$表示前$i$个仓库由前$j$个人来守护在能取得的最大安全值的情况下的最小花费. AC代码 //# ...
- http协议详解及htt面试题目,常见的http状态码
http协议详解及htt面试题目,常见的http状态码 HTTP报文是面向文本的,报文中的每一个字段都是一些ASCII码串,各个字段的长度是不确定的.HTTP有两类报文:请求报文和响应报文. HTTP ...