sed命令

1.显示指定行

1.   Sed –n ‘2p’ 文件名 显示文件第二行

2.  Sed –n ‘1,3p’ 文件名 显示文件1-3行,行号中间用逗号分隔

3.  Sed –n ‘/test/’p 文件名 显示包含test的行

为了编辑某个单词浏览一个文件时,sed返回包含指定单词的许多行,怎么使返回结果更精确以满足模式匹配呢?可以将行号和模式结合使用!

4.  Sed –n ‘/test/’p    文件名

5.  Sed –n '4,/test/'p  文件名

2.显示整个文件

sed –n ‘1,$’p 文件名

3.打印行号

1.sed –e ‘/test/=’ 文件名
整个文件都打印出来,并且打印出匹配行的行号

2.Sed –n ’/test/=’ 文件名
只打印匹配行行号

3.Sed –n -e ‘/test/p’ –e ‘/test/=’ 文件名
只打印匹配行和匹配行行号

4.附加文本

要附加文本,使用符号\a,可以将指定文本一行或多行附加到指定行,如果不指定文本放置位置,sed将缺省放在每一行后面,附加文本时不能指定范围,只允许一个地址模式,文本附加操作时,结果输出在标准输出上。
地址指定一个模式或行号,定位新文本附加位置,a\通知sed对a\后的文本进行实际附加操作

1.插入文本
/test/ i\
It taste good
类似于附加命令,只是在指定行前面插入

2.修改文本
/test/ c\
It taste good 3.删除文本
sed ‘1d’ 文件名     不显示第一行
sed ‘1,3d’ 文件名 不显示第一到三行 4.替换文本
sed ‘s/test/TEST/g’ test.txt
把test.txt文本中的所有test都转换成TEST

sed ‘s/test/TEST/w test.1’ test.txt
把test.txt文本中的所有test都转换成TEST并写入文件test.1(注意要文件名写在单引号里面)

5.替换修改字符串可以使用&
Cat hello.txt
I am a teacher
Sed –n ‘s/teacher/good &/p’ hello.txt
Cat hello.txt
I am a good teacher
Sed –n ‘s/teacher/ & good /p’ hello.txt
Cat hello.txt
I am a teacher good 6.从文件中读文本
处理文件时,sed允许从另一个文件中读文本,并将其文本附加在当前文件,命令格式为:address r filename
r通知sed从另一个文件源中读文本
例子:sed ‘/test/r hello.txt’ test
把hello.txt文件中的内容放置在test匹配行后面 7.匹配后退出
Sed ‘/test/q’ 文件名
首次匹配test后,退出
8.显示文件中的控制字符
当从其他系统下载文件时,有时候需要删除整个文件的控制字符(非打印字符)。怎么查看文件中是否有控制字符?
Cat –v 文件名
各个系统控制字符键值可能不同,主要取决于其映射方式(例如使用terminfo和termcap)
9.怎么产生控制字符^M
先Ctrl+v ,然后摁回车键
 

 

你可能感兴趣的:(test,单词,lsquo)