Sed练习
sed:编辑器
sed:Stream EDitor,行编辑器
用法:
sed [opthon]... ‘script’ inputfile..
scritp:‘地址命令’
常用选项:
-n:不输出模式中的内容至屏幕;默认输出;
-e:多点编辑功能;
-f /PATH/TO/SCRIPT_FILE:从指定文件中读取编辑脚本;
-r:使用扩展正则表达式,默认基本正则表达式
-i:原处编辑;相当于直接编辑
地址定界:
1:不给地址;对全文进行处理;
2:单地址;
#:指定的行
/pattern/:被此处模式所能够匹配到的每一行;
3:地址范围;
#,#
#,*#
/pat1/,/pat2/
编辑命令:
d:删除
~]# sed '/^UUID/d' /etc/fstab ;删除uuid开头的行
~]# sed '/^#/d' /etc/fstab ;删除空行;
~]# sed '1,5d' /etc/fstab ;删除1-5行的文件
p:打印显示模式空间中的内容至屏幕上;结合-n使用
~]# sed -n '/^UUID/p' /etc/fstab
a \text:在行后面追加文本,支持使用\n实现多行追加;
~]# sed '/^UUID/a \# hello sed' /etc/fstab
i \text:在行钱面插入文本,支持使用\n实现多行插入;
~]# sed '/^UUID/i \# hello sed' /etc/fstab
c \text:替换行为单行和多行文本;
sed '/^UUID/c \# hello sed' /etc/fstab
w /path/to/somefile:保存模式空间匹配到的行至指定文件中;
~]# sed '/^UUID/w /tmp/fstab.txt' /etc/fstab
r /path/from/somefile: 读取指定文件的文本流至模式空间匹配到的行的行后;
~]# sed '6r /etc/issue' /etc/fstab
= :为模式空间中的行打印行号;
~]# sed '/^UUID/=' /etc/fstab
!: 取反条件;地址定界取反;
~]# sed '/^UUID/!d' /etc/fstab
s///:支持使用其他分隔符;s@@@,s###;
替换标记:
g:行内全局替换;
p:如果替换成功的行
w: /PATH/TO/SOMEFILE:将替换成功的结果保存至指定文件中
~]# sed 's@^UUID@uuid@' /etc/fstab
~]# sed -n 's@r..t@&er@p' /etc/passwd
高级编辑命令:
h:把模式空间中的内容覆盖至保持空间中;
H:把模式空间中的内容追加至保持空间中;
g:从保持空间取出数据覆盖至模式空间;
G:从保持空间取出内容追加至模式空间;
x:吧模式空间中的内容与保持空间中的内容进行互换;
n:读取匹配到的行的下一行至模式空间;
N:追加匹配到的行的下一行至模式空间;
d:删除模式空间中的行;
D;删除多行模式空间中的所有行;
Sed练习的更多相关文章
- sed的应用
h3 { color: rgb(255, 255, 255); background-color: rgb(30,144,255); padding: 3px; margin: 10px 0px } ...
- 文本处理三剑客之sed命令
第十八章.文本处理三剑客之sed命令 目录 sed介绍 sed命令常用选项 sed常用编辑命令 sed使用示例 sed高级语法 18.1.sed简介 sed全名stream editor,流编辑器,s ...
- 6-2 sed 命令
1. sed : stream editor,流编辑器 是处理纯ASICC纯文本,按行琢行操作的. 编辑器有两种,行编辑器和全屏编辑器 sed:默认不编辑原文件,仅对模式空间中的数据做处理,而后.处理 ...
- 基本shell编程【3】- 常用的工具awk\sed\sort\uniq\od
awk awk是个很好用的东西,大量使用在linux系统分析的结果展示处理上.并且可以使用管道, input | awk '' | output 1.首先要知道形式 awk 'command' fi ...
- sed awk grep三剑客常用
sed的常用用法: awk的常用用法: grep的常用用法: 除了列出符合行之外,并且列出后10行. grep -A 10 Exception kzfinance-front.log 除了列出符合行之 ...
- linux shell 用sed命令在文本的行尾或行首添加字符
转自 http://www.cnblogs.com/aaronwxb/archive/2011/08/19/2145364.html 昨天写一个脚本花了一天的2/3的时间,而且大部分时间都耗在了sed ...
- Sed、Awk单行脚本快速参考
文本间隔: # 在每一行后面增加一空行 sed G awk '{printf("%s\n\n",$0)}' # 将原来的所有空行删除并在每一行后面增加一空行. # 这样在输出的文本 ...
- sed awk 样例
sed [options] '[action]' filename options: -n:一般sed命令会把所有数据都输出到屏幕,如果加入此选项,则只会把经过sed命令处理的行输出到屏幕. -e:允 ...
- linux sed命令详解
简介 sed 是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的 ...
- sed命令详解
搜索 纠正错误 添加实例 sed 功能强大的流式文本编辑器 补充说明 sed 是一种流编辑器,它是文本处理中非常中的工具,能够完美的配合正则表达式使用,功能不同凡响.处理时,把当前处理的行存储在临时 ...
随机推荐
- Atom读写MarkDown插件选择,以及墙内安装markdown-preview-enhanced,及markdown和mermaid使用教程
1.Atom自带markdown-preview 功能太少,需要大量拓展. 2.markdown-preview-plus 功能还不错,但是其中的滚动条插件markdown-scroll-sync和最 ...
- SpringBoot Controller接收参数的几种常用方式
第一类:请求路径参数1.@PathVariable获取路径参数.即url/{id}这种形式. 2.@RequestParam获取查询参数.即url?name=这种形式 例子GET http://loc ...
- Java的流
Java中的流主要是用来读写文件的.只要明确你是读文件还是写文件就可以确定使用哪种流了.读:read 写:writer 1.读文件:filereader这个类,顾名思义就知道是读文件了. 2.写文 ...
- C++环境设置
g++ -V #include <iostream> int main() { std::cout << "Hello World!\n"; return ...
- RocketMq 集群搭建 部署
原文链接:https://blog.csdn.net/weixin_40533111/article/details/84451219 作者小太阳^_^,转载请注明出处,谢谢 前言本文基于最新版roc ...
- JS的深度克隆,利用构造函数原型深度克隆
我爱撸码,撸码使我感到快乐!大家好,我是Counter.今天来写写,JS中的深度克隆,这个在笔面试中,考的还是比较多的,主要是对象与数组的赋值,如果直接赋值的话,那么得到的是对象或者数组在堆里的地址, ...
- Git 帮助
Git 配置 配置 git config --global user.name "..." git config --global user.email "...&quo ...
- [math]本博客已经支持书写数学公式
本博客已经支持mathjax格式公式 使用方法 使用方法单美元符号加单行公式. 使用方法双美元符号加多行公式. 展示 单行公式:\(x^2+2x+1=0\) 多行公式:\[x=\frac{{-b}\p ...
- vue页面优化中的v-show和v-if使用比较
在页面中使用了v-if做了一个tab框,点击不同的tab框,并加载不同的内容,由于各tab框对应的内容是4到5张统计图,加载的数据量比较大,发现后台请求响应返回的时间很快,在100ms以内,但点击ta ...
- 小程序之 input框设置placeholder的style
<input placeholder='></input>