概念:默认是行处理正则表达式
sed是流编辑器,一次处理一行内容,把当前处理的行存储在临时缓冲区中,称为模式空间。接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕,然读入下行,执下一循环。没有使用特殊命令,会在两个循环之间清空模式空间,但不会清空保留空间。直到文件末尾。文件内容并无改变,除非使用重定向定向输出存储。默认是打印 sed option [sed脚本] file 经常使用选项: -n:不输出模式空间内容到屏幕,即不自动打印 -e:多点编辑 -f /path/script_file 从指定文件中读取编辑脚本 -r: 支持使用扩展正则表达式 -i.bak(后缀能够本身随性起) 备份文件并原处编辑 地址定界: 1.不给地址:对全文进行处理 2.单地址: #:指定的行,$:最后一行 /pattern/:被 此处模式所可以匹配到的每一行 3.地址范围: #,# #,+# /pat1/,/pat2/ #,/pat1/ 4.~: 步进 1~2 奇数行 2~2偶数行 sed编辑命令: d 删除模式空间匹配的行,并当即启用下一轮循 环 p 打印当前模式空间内容,追加到默认输出以后 a [\]text 在指定行后面追加文本,支持使用\n实现多行 追加 i [\]text 在行前面插入文本 c [\]text 替换行为单行或多行文本 w /path/file 保存模式匹配的行至指定文件 r /path/file 读取指定文件的文本至模式空间中匹配到 的行后 = 为模式空间中的行打印行号 ! 模式空间中匹配行取反处理