Chinaunix首页 | 论坛 | 博客
  • 博客访问: 15865
  • 博文数量: 7
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 133
  • 用 户 组: 普通用户
  • 注册时间: 2014-03-06 09:49
文章分类
文章存档

2014年(7)

我的朋友

分类: LINUX

2014-03-14 15:34:07

    sed 是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。

调用sed命令有两种形式:  
#sed [options] 'command' file(s)  
#sed [options] -f scriptfile file(s)  

a\  
在当前行后面加入一行文本。

b lable  
分支到脚本中带有标记的地方,如果分支不存在则分支到脚本的末尾。
 
c\  
用新的文本改变本行的文本。

d  
从模板块(Pattern space)位置删除行。

D  
删除模板块的第一行。

i\  
在当前行上面插入文本。

h  
拷贝模板块的内容到内存中的缓冲区。

H  
追加模板块的内容到内存中的缓冲区。

g  
获得内存缓冲区的内容,并替代当前模板块中的文本。

G  
获得内存缓冲区的内容,并追加到当前模板块文本的后面。

l  
列表不能打印字符的清单。

n  
读取下一个输入行,用下一个命令处理新的行而不是用第一个命令。

N  
追加下一个输入行到模板块后面并在二者间嵌入一个新行,改变当前行号码。

p  
打印模板块的行。

P(大写)  
打印模板块的第一行。

q  
退出Sed。

r file  
从file中读行。

t label  
if分支,从最后一行开始,条件一旦满足或者T,t命令,将导致分支到带有标号的命令处,或者到脚本的末尾。

T label  
错误分支,从最后一行开始,一旦发生错误或者T,t命令,将导致分支到带有标号的命令处,或者到脚本的末尾。

w file  
写并追加模板块到file末尾。

W file  
写并追加模板块的第一行到file末尾。

!  
表示后面的命令对所有没有被选定的行发生作用。

s/re/string  
用string替换正则表达式re。

=  
打印当前行号码。

#  
把注释扩展到下一个换行符以前。

以下的是替换标记  
 
g表示行内全面替换。  

p表示打印行。  

w表示把行写入一个文件。  
  
x表示互换模板块中的文本和缓冲区中的文本。  
  
y表示把一个字符翻译为另外的字符(但是不用于正则表达式)  
  
选项
-e command, --expression=command
允许多台编辑。

-h, --help
打印帮助,并显示bug列表的地址。
 
-n, --quiet, --silent
取消默认输出。

-f, --filer=script-file
引导sed脚本文件名。

-V, --version
打印版本和版权信息。

原文地址:

Sed命令实例.txt


阅读(564) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~