sed命令常见用法

sed  命令

(一)定位文本

(1) -n

不打打印所有行,只打印匹配的部分

(2) -e

使用一个sed命令多个参数时使用

例如:sed -n -e '/test/p' -e '/test/=' 文件名,即打印test所在文本中的行的内容以及行号

(3) -f

表示正在调用sed脚本文件,文件的第一行写成

#!/bin/sed -f

(4) x

指定行号,例如:sed -n '1p' 文件名,即打印该文件第一行的内容

(5)x,y

指定行号范围,例如:sed -n '1,5p' 文件名,即打印文件第一行到第五行的内容

(6)/pattern/

查询包含模式的行(注意,此匹配内容不能单独使用,需要配合其他参数,例如/test/p,即匹配test内容的行的内容)

(7)/pattern/,x

匹配pattern的行到行号为X号的内容

(8)x,/pattern/

匹配x行号到pattern所在行的内容

(9)!x,y

不在x,y之间的内容

(二)操作文本

(1)p  打印匹配行

(2)= 打印匹配的行号

(3)a\ 在定位行号之后追加文本信息

(4)i\  在定位行号之前追加文本信息

(5)d  删除定位行

(6)c\ 用新文本替换定位文本

(7)s 切换到替换模式

       s/替换的字符串/新的字符串/[替换选项]

       替换选项 g   替换文本中所有需要替换的字符(改变原文本)

                   p    与-n相结合,只打印替换的行(不改变原文本)

                   w    表示将输出定向到一个文件(sed 's/替换的字符串/新的字符串/w 重定向文件名’  操作的文件名)

(8)w  写入一个新文件

      例子:sed -n '1,5 w 新文件名' 文件名(将1到5行存入到新的文件)

(9)r 读入新的文本

(10)q 匹配后退出(先匹配出第一行,然后退出)

(11)y 字符变换

例子,将test文件中的12345,分别变换成abcde

sed 'y/12345/abcde/' test

(12)l 显示控制字符,例如回车,shift等等

(13){} 命令组,类似于-e

 sed -n '/rrr/{p;=}' 1.doc

 (14) n 读取下一个输入行

(15)h 写入缓存区

(16) x 缓存区互换

(17)G 追加缓存区内容

 

 

 

 

 

posted on 2013-04-07 21:52  陈一刀  阅读(628)  评论(0编辑  收藏  举报

导航