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 就提示错误,连接不上数据源.该 ...
随机推荐
- docker可视化工具
介绍两款Docker可视化工具 DockerUI(特点:轻量) 下载镜像 docker pull abh1nav/dockerui 启动容器 docker run -d --privileged -- ...
- 吴裕雄--天生自然TensorFlow高层封装:解决ValueError: Invalid backend. Missing required entry : placeholder
找到对应的keras配置文件keras.json 将里面的内容修改为以下就可以了
- 异常处理和UDP协议
一.什么是异常? 程序在运行过程中出现了不可预知的错误,并且该错误没对应的处理机制,那么就会以异常的形式表示出来, 造成的影响就是整个程序无法再正常的运行,抛出异常. 二.异常的结构: 1:异常的类型 ...
- opencv---颜色空间转化并实现物体跟踪
一.图像处理的基本操作 因为这是第一篇写opencv的笔记,故先讲讲在python下写opencv的基本操作.总共总结了三点如下: 开头一定要加编码声明:-*- coding: utf-8 -*- p ...
- 简单的使用httpclient读取网页html例子
public void clientPost(String url) { /* 1 生成 HttpClinet 对象并设置参数*/ HttpClient httpClient=new Http ...
- sklearn包源码分析(二)——ensemble(未完成)
网络资源 sklearn包tree模型importance解析
- mysql truncate 的问题
问题是微信群里一伙计提的 `mysql truncate 空表都需要3 4秒,要优化解决` 一开始觉得这莫名其妙,因为作这种操作的都是后台运维,不是实时的对外服务,运维又不差这3秒 其反应trunca ...
- 006.前端开发知识,前端基础CSS(2020-01-21)
来源:第五天 01盒子水平居中 一.盒子中文字控制: 1.text-align: center; /*可以让盒子内容(文字 行内元素 行内块元素)居中对齐*/ 二.让盒子水平居中对齐: 方法1.ma ...
- LGOJ3327 【SDOI2015】约数个数和
又是一道卡常好题 坑掉我的 \(define \space int \space long \space long\) 感觉出题人并没有获得什么快乐-- Description link 题意概述: ...
- python面向对象类的约束和设计的统一化规范
.封装 定义:将一些东西内容封存到一个地方,你还可以再取出, 类设置静态属性,设置一些方法 对象可以在其对象空间中封装一些属性 2.多态 定义:一个事物的多种形态 就想a可以是一个字符串,可以是一个列 ...