Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1140069
  • 博文数量: 153
  • 博客积分: 10576
  • 博客等级: 上将
  • 技术积分: 2137
  • 用 户 组: 普通用户
  • 注册时间: 2007-12-02 21:01
文章分类

全部博文(153)

文章存档

2009年(43)

2008年(110)

分类: LINUX

2008-04-16 20:08:02

描述:sed是一个流编辑器。流编辑器用来对输入流(一个文件或是来自管道的输入)的文本进行处理。sed对管道里文本进行过滤的能力使它不同于其他类型的编辑器。

参数:
-n,--quiet,--silent    禁止自动显示模式空间的内容。

-e script, --expression=script    添加script至将要执行的命令列表中。

-f script-file, --file=script-file        将script-file中的内容添加到将要执行的命令列表中。

-i [SUFFIX],--in-place[=SUFFIX]        在指定位置编辑文本(如果扩展选项给出将做备份)

-l N, --line-length=N         规定每行的宽度

--posix    关闭所有的posix扩展选项

-r,--regexp-extended        使用扩展的正则表达式。

-s,--separate     将多个文件视为各自独立的而不是视为一整个长的流。

-u, --unbuffered        每次只从输入文件载入最少量的数据并经常清空输出缓冲区。

--help     显示帮助文件并退出。

--version         输出版本信息并退出。



命令概要:

a\    
text    将text部分追加到目标行。

i\
text    将text部分插入到目标行

q    停止处理更多的行直接退出,除非自动显示被关掉,当前模式空间的内容将被显示。

Q    直接退出sed

r  filename        从filename文件读入数据追加到目标行。

R  filename     从filename文件读入一行追加到目标行。

d     删除模式空间的内容,开始下一个循环。

h   H   复制/追加 模式空间到hold空间

g   G   复制/追加hold空间到模式空间。

x    交换hold空间与patten空间的内容

l    以“清楚可见”的格式显示当前行(例如,当前行中有指标符,使用l选项后将显示\t)

n   N        读入/追加输入的下一行到模式空间。

p    显示当前模式空间的内容。

s/regexp/replacement/        尝试匹配regexp于模式空间的内容。如果成功,将用replacement替换regexp的内容。

w  filename        将当前模式空间的内容写到文件filename中。

W filename        将当前模式空间里的第一行内容写到文件filename中。

/regexp/        查找与regexp匹配的行。

\cregexpc       查找与regexp匹配的行,c可以是任何字符。



sed实用程序被称为流编辑器,因为他逐行编辑流式输入,对输入的每一行执行所有的编辑命令,然后在读入下一行。当sed编辑输入,它将:
* 从输入流中把一个行读入自身缓存(模式空间)
* 对该行执行所有编辑命令
* 把模式空间内容写入输出
* 读入下一行

阅读(1534) | 评论(0) | 转发(0) |
0

上一篇:grep参数

下一篇:wml标签详细汇总

给主人留下些什么吧!~~