简介:正则表达式
sed是一种流编辑器,它是文本处理中很是重要的工具,可以完美的配合正则表达式使用,功能与众不同。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并无 改变,除非你使用重定向存储输出或者使用直接编辑文件选项-i。sed主要用来自动编辑一个或多个文件;简化对文件的反复操做;编写转换程序等。编辑器
sed 命令格式为:工具
sed [options] 'command' file(s)spa
sed [options] -f scriptfile file(s)3d
sed 经常使用命令:ip
1.替换操做:s命令字符串
替换文本中的字符串:input
sed 's/abc/ABC/' file_input #若想要进行全局替换:sed's/abc/ABC/g' file_inputio
2.删除插入操做:di命令test
sed '/^test/' d file #删除文件中全部以test开头的行
sed '2,$d' file #删除文件从第二行到末尾的全部行
sed '/^$/d' file #删除文件中全部的空白行
3.标记以匹配字符串:&
sed 's/^abc/&def' file #全部以abc开头的行都会被替换成它本身加def
4.多点编辑:e命令
sed -e '1,3d' -e 's/abc/def/' file #-e选项容许在同一行里执行多条命令
5.写入文件:w命令
sed -n '/abc/w file1' file2 #在file2中,全部包含abc的行都被写入file1
6.打印奇数行偶数行
example1:sed -n 'p;n' file #打印奇数行
sed -n 'n;p' file #打印偶数行
example2:sed '1~2p' file #打印奇数行
sed '2~2p' file #打印偶数行