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 就提示错误,连接不上数据源.该 ...
随机推荐
- Tarjan算法:求解无向连通图图的割点(关节点)与桥(割边)
1. 割点与连通度 在无向连通图中,删除一个顶点v及其相连的边后,原图从一个连通分量变成了两个或多个连通分量,则称顶点v为割点,同时也称关节点(Articulation Point).一个没有关节点的 ...
- Spring 连接MySQL报错java.sql.SQLException: Unknown system variable 'tx_isolation'
先是报错255,这个时候需要把 jdbc:mysql://localhost:3306/projUse 写成 jdbc:mysql://localhost:3306/projUse?useUnicod ...
- JS中的0b00与0x00表示什么
换成二进制表示:(0b表示二进制数,0x表示16进制数)
- Python语言学习前提:循环语句
一.循环语句 1.循环语句:允许执行下一个语句或语句组多次 2. 循环类型 3. 循环控制语句 4. while 循环语句 a.while循环语句:在某个条件下,循环执行某段程序,以处理需要重复处理的 ...
- iOS分段选择器、旅行App、标度尺、对对碰小游戏、自定义相册等源码
iOS精选源码 企业级开源项目,模仿艺龙旅行App 标签选择器--LeeTagView CSSegmentedControl常用的分段选择器,简单易用! 仿微信左滑删除 IOS左滑返回 输入框 iOS ...
- 闭包,协议delegate
1.定义 //1.闭包表达式语法 { (parameters) -> returnType in statements } let names = ["Chris", &qu ...
- RegexUtil
package org.linlinjava.litemall.core.util; import java.util.ArrayList; import java.util.Collections; ...
- 修改mysql密码报错: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '
使用这种格式报错: 格式:mysql> set password for 用户名@localhost = password('新密码'); 找到另一种方法解决: ALTER USER 'root ...
- 初试vue
Vue了解 """ vue框架 vue是前台框架:Angular.React.Vue vue:结合其他框架优点.轻量级.中文API.数据驱动.双向绑定.MVVM设计模式. ...
- 吴裕雄--天生自然python学习笔记:pandas模块删除 DataFrame 数据
Pandas 通过 drop 函数删除 DataFrarne 数据,语法为: 例如,删除陈聪明(行标题)的成绩: import pandas as pd datas = [[65,92,78,83,7 ...