1.简介
sed全称是Stream Editor,是非交互式的编辑器。它不会修改原文件,除非使用shell重定向来保存结果, 或者可以指定-i选项来在线修改文件,这样就会改变原文件,升级脚本通常用-i选项。
默认情况下,所有的输出行都被打印到屏幕上。sed 本身也是一个
管线命令,可以分析 standard input 。
sed编辑器
逐行处理文件(或输入),并将结果发送到屏幕。具体过程如下:
(1)首先sed把当前正在处理的行保存在一个临时缓存区中(也称为模式空间),
(2)然后处理临时缓冲区中的行,
(3)完成后把该行发送到屏幕上。
sed每处理完一行就将其从临时缓冲区删除,然后将下一行读入,进行处理和显示。处理完输入文件的最后一行后,sed便结束运行。sed把每一行都存在临时缓冲区中,对这个副本进行编辑,所以不会修改原文件。
2. 定址
在使用sed的过程中,我们经常会听到“定址”,那么什么是“定址”呢?
定址用于决定对哪些行进行编辑。地址的形式可以是
数字、正则表达式、或二者的结合。如果没有指定地址,sed将处理输入文件的所有行。
比如:
1)地址是一个数字则表示行号;是“$"符号,则表示最后一行。
sed -n '3p' datafile #只打印第三行
2)只显示指定行范围的文件内容
sed -n '100,200p' mysql_slow_query.log # 只查看文件的第100行到第200行
3)地址是逗号分隔的,那么需要处理的地址是这两行之间的
范围(包括这两行在内)。范围可以用数字、正则表达式、或二者的组合表示。
• sed '2,5d' datafile #删除第二到第五行
•
• sed '/My/,/You/d' datafile #删除包含"My"的行到包含"You"的行之间的行
•
• sed '/My/,10d' datafile #删除包含"My"的行到第十行的内容
3. sed命令与选项
调用sed命令有两种形式:
sed [options] 'command' file(s)
sed [options] -f scriptfile file(s)
对于第一种形式,具体调用一般是:
sed [选项][定址[命令]] file(s)
命令和选项如下:
3.1、sed命令
3.2、sed选项
补充:
在sed的命令行中引用shell
变量时要使用
双引号,而不是通常所用的单引号。这根grep一样,双引号会获取变量的值,而单引号只会把变量当做普通字面字符。
更多可以参考:
http://www.cnblogs.com/edwardlost/archive/2010/09/17/1829145.html
http://blog.csdn.net/engledb/article/details/19623087
http://www.iteye.com/topic/587673
http://www.cnblogs.com/edwardlost/archive/2010/09/17/1829145.html
《鸟哥的linux私房菜 基础篇》第12章
- 大小: 41.9 KB
- 大小: 92.6 KB
- 大小: 264 KB
分享到:
相关推荐
176<br><br>18.4.3 提示键入y或n 177<br><br>18.4.4 case与命令参数传递 ...使用for循环备份文件 183<br><br>18.5.7 多文件转换 183<br><br>18.5.8 多sed删除操作 184<br><br>18.5.9 循环计数 184<br><br>18.5.10 for...
将介绍执行命令列上的编辑指令 、sed 编辑指令、执行档案内的编辑指令、执行多个档案的编辑、及 执行 sed 输出控制。
sed 用法介绍 89<br>10.1 sed怎样读取数据 89<br>10.2 调用sed 89<br>10.2.1 保存sed输出 90<br>10.2.2 使用sed在文件中查询文本的方式 90<br>10.2.3 基本sed编辑命令 90<br>10.3 sed和正则表达式 91<br>10.4 基本...
什么是sed:主要介绍什么是sed工具,sed工具的主要操作、工作方式以及地址表示方法,在sed命令中使用正则表达式等。 sed命令的常用操作:主要介绍sed命令的注释方法,打印文本,替换文本,删除文本,追加文本,插入...
_grep家族<br>|_awk介绍<br>|_sed用法介绍<br>|_合并与分割<br>|_tr用法<br>第三部分登录环境<br>|_登录环境<br>|_环境和shell变量<br>|_引号<br>第四部分基础shell编程<br>|_shell脚本介绍<br>|_条件测试<br>|_控制...
_grep家族<br>|_awk介绍<br>|_sed用法介绍<br>|_合并与分割<br>|_tr用法<br>第三部分登录环境<br>|_登录环境<br>|_环境和shell变量<br>|_引号<br>第四部分基础shell编程<br>|_shell脚本介绍<br>|_条件测试<br>|_控制...
_grep家族<br>|_awk介绍<br>|_sed用法介绍<br>|_合并与分割<br>|_tr用法<br>第三部分登录环境<br>|_登录环境<br>|_环境和shell变量<br>|_引号<br>第四部分基础shell编程<br>|_shell脚本介绍<br>|_条件测试<br>|_控制...
sed 用法介绍 89<br>10.1 sed怎样读取数据 89<br>10.2 调用sed 89<br>10.2.1 保存sed输出 90<br>10.2.2 使用sed在文件中查询文本的方式 90<br>10.2.3 基本sed编辑命令 90<br>10.3 sed和正则表达式 91<br>10.4 基本...
linux shell命令sed的使用方法
linux 系统 sed 命令使用方法linux 系统 sed 命令使用方法linux 系统 linux 系统 sed 命令使用方法linux 系统 sed 命令使用方法sed 命令使用方法
shell编程中经常用到sed命令,本文详细介绍了shell常用命令sed详细用法
sed 用法sed 用法sed 用法sed 用法sed 用法
文章主要介绍Linux下sed命令的用法,感兴趣的朋友可以看看。
ls -l * |grep "^-"|wc -l ---- to count files<br># ls -l * |grep "^d"|wc -l ----- to count dir<br>还可以将以上的语句变成script或做个alias<br><br><br>2.显示文件的类型<br>用命令file可以使你知道某个文件...
主要介绍一下linux中sed的用法;和上一个awk设计得一样;
NULL 博文链接:https://hw1287789687.iteye.com/blog/1727749
LINUX的awk和sed的常用用法 LINUX的awk和sed的常用用法
sed是一个很好的文件处理工具,本身是一个管道命令,主要是以行为单位进行处理,可以将数据行进行替换、删除、新增、选取等特定工作,下面先了解一下sed的用法
Linux三剑客之sed命令:自己在平时的使用过程中总结积累的sed命令的若干种常用用法,特分享出来。 参数: -i 表示inplace edit,就地修改文件 -r 表示搜索子目录 -l 表示输出匹配的文件名 s 表示替换,d 表示删除...
在一般 sed 的用法中,所有来自 STDIN的资料一般都会被列出到萤幕上。但如果加上 -n 参数后,则只有经过sed 特殊处理的那一行(或者动作)才会被列出来。-e∶直接在指令列模式上进行 sed 的动作编辑;-f∶直接将 sed ...