linux——sed 流编辑器
sed 对字符的处理
p 模式——显示
d 模式——删除
a 模式——添加
c 模式——替换
w 模式——写入
i 模式——插入
p 模式
sed -n '/^#/p' fstab
显示以 # 号开头的行
sed -n '/^#/!p' fstab
显示不以 # 号开头的行
sed -n '/0$/!p' fstab
显示不以 0 结尾的行
cat -n fstab | sed -n '2,6p'
显示 2-6 行
cat -n fstab | sed -n -e '2p' -e '6p'
与cat -n fstab | sed -n -e '2p;6p'
显示第2、第6行
cat -n fstab | sed -n -e '2!p'
显示除了第2行的其他行
cat -n fstab | sed -n -e '2,6!p'
不显示 2-6 行
cat -n fstab | sed -ne '2!p;6!p' | uniq -d
显示除了第2、第6行的其他行
d 模式
cat -n fstab | sed -e '2d;6d'
删除第2、第6行后再显示
cat -n fstab | sed -e '2,6d'
删除第 2-6 行后再显示
sed -e '/^#/d' fstab
删除以 # 号开头的行后再显示
sed -e '/^$/d' fstab
删除空行后再显示
sed -e '/^$/d;/^#/d' fstab
删除空行和以 # 号开头的行后再显示
sed -e '/UUID/!d' fstab
< == >sed -e '/^UUID/!d' fstab
除了含有 UUID 的行(以UUID开头的行)不删除,其余的删除后再显示
sed -e '/UUID/d' fstab
删除含有 UUID 的行后再显示
a 模式
sed '/hello/aworld' westos
添加 world 到文件 westos(默认添加到最后行)
sed 's/hello/hello world/g' westos
全局替换,将 hello 替换成 hello world
sed '/hello/a\world' westos
等价于sed '/hello/aworld' westos
sed '/hello/aworld westos' westos
添加 hello world 到文件 westos
sed '/hello/aworld\nwestos' westos
添加 world westos 到文件 westos ,world 后有换行符,所以 westos 换行显示
sed '/hello/aworld\n westos' westos
world 后有换行符且有一空格,所以 westos 换行并空格显示
c 模式
sed '/hello/chello world' westos
将文件 westos 中的 hello 替换成 hello world
sed '/hello/ci\nlike\nyou' westos
将文件 westos 中的 hello 替换成 i like you 并换行显示
w 模式
sed -n '/bash$/p' passwd > file
等价与sed -n '/bash$/wfile1' passwd
此处只为看效果,用 file 和 file1 演示
sed '/hello/=' westos
sed '/hello/=' -i westos
参数 -i :直接修改读取的文件内容,而不是输出到终端。
演示将内容一行显示
sed '6r westos' fstab
在文件 fstab 的第6行后添加上文件 westos 的内容后显示
sed '$r westos' fstab
在文件 fstab 的最后一行后添加上文件 westos 的内容后显示
sed '1r westos' fstab
在文件 fstab 的第1行后添加上文件 westos 的内容后显示
sed -n '/^UUID/=' fstab
sed '/^UUID/=' fstab
- sed 的其他用法
此处只演示sed -f filename1 filename2
,其余可自己测试
- sed 的其他用法
sed -f filename1 filename2
sed -n -e '/^UUID/p' -e '/^UUID/=' filename
sed -e 's/sbin/linux/;s/bash/westos/' filename
sed 's/^\//#/' filename
sed 's@^/@#@g' filename
sed 's/\//#/' filename
sed 's/\//#/g/' filename
sed 'G' filename
sed '$!G' filename
sed '=' filename | sed 'N;s/\n/ /'
sed -n '$p' filename
linux——sed 流编辑器相关推荐
- linux流编辑器,linux sed 流编辑器
sed 是一种新型的,非交互式的编辑器. sed -V or sed --version 可以查看sed版本 sed 的工作过程 sed编辑器逐行处理文件或输入,并将输出结果发到屏幕. sed把当前 ...
- 文本处理三剑客之 sed 流编辑器(基础部分)
文本处理三剑客之 sed 流编辑器(基础部分) SED 即 Stream EDitor.和交互式编辑器如 vi 需要打开整个文件不同,sed 是行编辑器,每次处理一行,比较适合在脚本中进行无交互编辑, ...
- Linux Shell编程笔记6 sed流编辑器
简介 sed是一个流编辑器,它会读取文件流,以行为单位进行处理.sed会按照顺序执行对每一行执行命令.sed把每一行结果写入标准输出,不修改任何输入文件.一般来说,文件流需要处理每一行的时候,需要借助 ...
- sed 流编辑器 简介及原理
原文链接:http://blog.csdn.net/longerzone/article/details/24718255 1. sed 简介及原理简析 1.1 sed 简介 Sed 是什么?相信很多 ...
- linux——sed行编辑器
Sed 行编辑器 Stream editor 用来操作纯SCLL码的文本,处理时,把当前的行储存在临时缓存区中,称为"模式空间(pattern space)"可以指定 ...
- Linux基础命令-sed流编辑器
Linux三剑客-grep命令 Sed 一. 命令介绍 先到帮助文档中查看命令的描述信息 NAME sed - stream editor for filtering and transforming ...
- 【shell】shell脚本实战-sed流编辑器
文章目录 sed的介绍 sed的执行过程 sed的用法 sed常用选项 实战案例 1. 将 passwd中root替换为zmgaosh 2. 按行查找替换 1)单行替换: 2)多行替换: 3)删除2- ...
- linux shell中的流编辑器sed的使用
sed流编辑器 23.3.1 sed strem editor 流编辑器 sed编辑器是一行一行的处理文件内容的.正在处理的内容存放在模式空间(缓冲区)内,处理完成后按照选项的规定进行输出或文件的 ...
- linux中sed的基本用法,linux sed用法
一.定义 sed 流编辑器,每次从输入中读取一行,用提供的编辑器命令匹配数据.按命令中指定的方式修改流中的数据,然后将生成的数据输出到STDOUT,在流编辑器将所 有命令与一行数据进行匹配后,它会读取 ...
最新文章
- 语义表征的无监督对比学习:一个新理论框架
- 拿下计网协议后,我就是公园里最靓的仔
- mysql备份操作_mysql-数据备份操作
- LDPC译码算法代码概述
- system类的 静态方法可以启动垃圾回收器。_Java—System类入门学习
- python解释器的提示符是shell嘛_python解释器怎么运行
- BootStrap 用法
- 备战520|Python花式表白的几种姿势
- 微信内测新功能:公众号们脖子一凉...
- 0909 学习操作系统
- matlab常用操作 随手记录
- 首次!中国移动在Nature 杂志子刊 Nature Electronics发表5G高能效通信技术文章
- iOS voip电话和sip软电话 --网络电话
- 嵌入式开发好用的工具集合
- google地图距离算法_谷歌地图计算两个坐标点的距离函数
- 19寸宽屏液晶显示器的设置 有效保护视力
- 桌面上计算机图标移动变成复制,电脑桌面图标都变成lnk后缀怎么办
- html自动刷新 idea,idea新建css idea怎么刷新导入的css
- BIO基本介绍以及使用
- VPS云主机套餐中都包含什么