流式编辑器sed命令

sed,一种流式编辑器 (Stream Editor) ,针对文本的行进行处理

基本使用范式:


sed命令的使用范式

查找文本:
1 . -n : 打印符合条件的行

-n选项的含义

sed -n '2'p filename #表示输出第二行
sed -n '2,$'p filename # 表示从第二行到末尾输出文本的内容
sed -n '/root:/'p filename #表示输出含有 'root:' 的行
#此外sed如grep也支持正则表达式

注意: 这里的 / 可以使用 @# 替换

  1. -e : 连缀命令,实现多个行为
    -e选项
sed -n -e '1'p -e '/root:/'p filename #打印第一行和含有 'root:' 的行, '//' 不能省略

删除文本:

sed '1'd filename #删除第一行
sed '1,3'd filename #删除第一行到第三行
sed '3,$'d filename # 删除3行到文档的末尾
sed '/root:/'d filename# 删除含有 'root:' 的行

替换文本: 最强大的命令

sed '1,5s/目标字符串/替换后的字符串/g' filename# s 表示是替换, g 表示全局替换.类似于vim的替换指令

替换和删除有相通之处,可以使用替换的命令删除一些能使用正则表达式匹配的内容.如

sed '1,$s/[0-9a-zA-Z]//g ' filename #删除所有的字母和数字
sed '1,$s#[0-9a-zA-Z]##g ' filename'# 删除所有的字母和数字
sed '1,$s#^$##g' filename # 删除空行

你可能感兴趣的:(流式编辑器sed命令)