Sed 实记 · laoless's Blog

sed编辑命令
| p | 打印匹配行 |
|---|---|
| = | 打印文件行号 |
| a | 在定位行之后追加文本 |
| i | 在定位行之前插入文本 |
| d | 删除定位行 |
| c | 用新文本替换定位文本 |
| s | 使用替换模式替换相应模式 |
| r | 从另一个文件读取文本 |
| w | 将文本写入到一个文件 |
| y | 变换字符,类似替换 |
| q | 第一个模式匹配完成后退出 |
| l | 显示与八进制ASCII码等价的控制字符 |
| {} | 在定位行执行的命令组 |
| n | 读取下一个输入行,用下一个命令处理新的行 |
| h | 将模式缓冲区的文本复制到保持缓冲区 |
| H | 将模式缓冲区的文本追加到保持缓冲区 |
| x | 互换模式缓冲区和保持缓冲区的内容 |
| g | 将保持缓冲区的内容复制到模式缓冲区 |
| G | 将保持缓冲区你内容追加到模式缓冲区 |
| g | 替换文本全部 |
|---|---|
| p | 与n选项结合只打印替换行 |
| w 文件名 | 输出定向到一个文件 |
Eg:
-n打印文件第一行(不加选项,还会打印全部内容)
1
2sed -n '1p' input
sed -n '1,3p' input’=‘只打印对应内容的行号
1
sed -n '/string/=' input
-e 打印查询字符并显示行号
1
sed -e '/string/=' -e '/string/p' input
等价于sed ‘/string/{=;p}’ input`
a在指定内容后追加
1
sed '/string/aappend a new line.' input
在文件最后一行追加
1
大专栏 Sed 实记 · laoless's Blog"code"> sed '$'astring input
替换文本
1
2
3sed -n '/string/cint' input
sed -n 's/string/int/2g' input
sed -n '/string/s#string#int#g' #替换所有匹配到的字符串错误用法(-ni选项不能连用)
1
2sed -ni '/string/cint/p' php.ini
sed -ni 's/string/int/p' php.ini删除最后一行和最后一行
1
sed -e '$'d -e '1'd input
只打印替换行
1
sed -n 's/string/int/p' input
分别替换第n次匹配
1
sed -n 's/string/np' input
显示控制字符(ASCII)
1
sed -n '1,$'l input
处理匹配行的下一行
1
sed '/string/{n;s/cf/lol/;} input在指定字符串后/前添加内容
1
2sed -i 's/index.html/& index.php /' httpd.conf
sed -i 's/index.html/index.php &/' httpd.conf&就代表着指定的字符串位置
Sed 实记 · laoless's Blog的更多相关文章
- springboot 完整企业项目搭建实记
昨天搭建ssm框架时突然想到可以搭建springboot来完美解决配置复杂的问题,今天学习了一下springboot的搭建,在此记录一下搭建的过程和踩过的坑 这里给自己定一个该框架搭建完成的目标,如下 ...
- awk处理实记
经grep日志后得到的数据格式如下: } . [debug][-- ::] SendDataStyled:{ , "innings" : "6189269620_0007 ...
- 实记JLink刷固件方法
最近J-Link调试程序,不知何故,USB报无法连接,试了别的电脑也是这样.文件存于“百度网盘/05.组装维修/4.单片机/1.JLink-ARM仿真器”下.所有的操作基于WIN7 32位系统. 1. ...
- tomcat 优化实记
好记性不如烂笔头,以下是 tomcat 无脑优化 1.内存设置(VM参数调优)(1). Windows环境下,是tomcat解压版(执行startup.bat启动tomcat) 解决办法:修改“%T ...
- asp.net mvc项目实记-开启伪静态-Bundle压缩css,js
百度这些东西,还是会浪费了一些不必要的时间,记录记录以备后续 一.开启伪静态 如果不在web.config中配置管道开关则伪静态无效 首先在RouteConfig.cs中中注册路由 routes.Ma ...
- SpringBoot + SpringCloud学习踩坑实记
踩的坑: 1).springcloud框架中,依赖一直报错,很可能是没有添加springcloud的依赖,或者是依赖的版本号过低.并且springboot也有一个父依赖. 2.springcloud ...
- 实记处理mongodb的NUMA问题
一次在启动mongodb的过程中,出现过NUMA这个问题, mongodb日志显示如下: WARNING: You are running on a NUMA machine. We suggest ...
- EJB组件开发实记(1)
安装JBoss或者Wildfly jdk1.4以上. Eclipes安装插件 JBoss Tools: eclipes Jee photon 在eclipes 内部点击 >>Windows ...
- Fedora26安装Mysql实记(包含yum换源教程)
课程实验中有一项是安装Hive,这个过程中需要安装Mysql. 在安装Mysql耗费了好多时间,总是报错数据仓库同步失败什么的. 输入yum install mysql 就提示错误,连接不上数据源.该 ...
随机推荐
- java合并一个文件夹下所有txt文件,输出到另一个txt
最近写了个单元测试,递归调用方法,把同一个文件夹里所有的txt合并输出到一个txt文件.参考了两个博客,分别是已有的方法,还有个就是检测txt文件所用编码的技术贴.如果不检测txt文件的编码,那么转换 ...
- 2019ICPC 上海网络赛 L. Digit sum(二维树状数组+区间求和)
https://nanti.jisuanke.com/t/41422 题目大意: 给出n和b,求1到n,各数在b进制下各位数之和的总和. 直接暴力模拟,TLE.. 没想到是要打表...还是太菜了. # ...
- 迅为-IMX6开发板Android Eclipse 导入Led应用程序工程
本小节给大家详细讲解如何导入 Android 应用的工程文件.先解压迅为“iTOP-IMX6-Android4.4-LED 测试程序 r”压缩包.如下图所示,解压出ledtest 文件夹.<ig ...
- C#通过窗体应用程序操作数据库(增删改查)
为了体现面向对象的思想,我们把“增删改查”这些函数封装到一个数据库操作类里: 为了便于窗体程序与数据库之间进行数据交互,我们建一个具有数据库行数据的类,通过它方便的在窗体程序与数据库之间传输数据: 我 ...
- Opencv笔记(三)——视频的获取及保存
一.利用摄像头获取视频 我们经常需要使用摄像头捕获实时图像.OpenCV 为这中应用提供了一个非常简单的接口.让我们使用摄像头来捕获一段视频,并把它转换成灰度视频显示出来.了获取视频,你应该创建一个 ...
- JavaWeb过滤器(Filter)
参考:https://blog.csdn.net/yuzhiqiang_1993/article/details/81288912 原理: 一般实现流程: 1.新建一个类,实现Filter接口2.实现 ...
- Matlab高级教程_第三篇:Matlab转码C/C++方式(混编)_第二部分
这一部分通过一些实例来进行转码和调试的讲解: 1. 输入变量.输出变量和过程内变量的内存预分配 函数代码:函数名test function [A,B] = test( mark,num,array ) ...
- java中的赋值
java中的赋值使用符号“=”. 按照java编程思想的解释:它的意思是“取等号右边的值,把它复制给左边”. 当然左边必须是一个明确的,已命名的变量. 基本类型: int a=2; int b=3; ...
- 从二叉搜索树到AVL树再到红黑树 B树
这几种树都属于数据结构中较为复杂的,在平时面试中,经常会问理解用法,但一般不会问具体的实现,所以今天来梳理一下这几种树之间的区别与联系,感谢知乎用户@Cailiang,这篇文章参考了他的专栏. 二叉查 ...
- android五子棋游戏、资讯阅读、大学课程表、地图拖拽检测、小说搜索阅读app等源码
Android精选源码 Android 自动生成添加控件 android旋转动画.圆形进度条组合效果源码 一款很强的手机五子棋app源码 android地图拖拽区域检测效果源码 实现Android大学 ...