使用sed在匹配行之后增加一行数据 需求:在原来大量的shell文件中,给出了错误信息打印,现在要求打印错误后直接退出脚本。 if [ $? -eq 0 ];then echo_green "done!" else echo_red "Error, please check logs." fi 使用sed实现。 sed -i '/echo_red "Error, please check logs."/a \ \ \ exit 1'...
sed -i '2i hello' sample.txt # 插入到行后(也即插入到第2行) sed -i '1a hello' sample.txt sed -i '2a hello' sample.txt # 删除操作 # 删除文件第一行 sed -i '1d' file # 删除文件前两行 sed -i '2d' file # 删除文件最后一行 sed -i '$d' file # 替换操作 # 替换第一行的内...
a 追加 在匹配的行下面插入内容 append i 插入 在匹配行的上一行插入内容 insert c 修改 本行替换 change y 转换的命令,一一对应转换 n 处理下一行 next q 退出,不会再向模式空间读入新的行 quit s 查找替换 '模式s/旧的内容(正则表达式)/替换内容(新的内容)/[修饰符]' 修饰符: g:全局替换 n:n为数...
sed -i '/MysqlCfg/ r add.cfg' b 在包含ProfLevel的行后插入一行\t>Tab缩进 sed -i '/ProfLevel/a\\ttestLevel = 3' 在包含ProfLevel的行前插入一行\t>Tab缩进 sed -i '/ProfLevel/i\\ttestLevel = 3' 在包含ProfLevel的行后插入两行\t>Tab缩进\n换行 不加-i输出stout ...
i :插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行); p :打印,亦即将某个选择的数据印出。通常 p 会与参数 sed -n 一起运行~ s :取代,可以直接进行取代的工作哩!通常这个 s 的动作可以搭配正则表达式!例如 1,20s/old/new/g 就是啦!
i:插入,在选定行上面插入一行指定内容。 c:替换,将选定行替换为指定内容。 y:字符转换,转换前后的字符长度必须相同。 p:打印,如果同时指定行,表示打印指定行;如果不指定行,则表示打印所有内容;如果有非打印字符,则以 ASCII 码输出。其通常与“-n”选项一起使用。
sed ‘/pattern/i text to be inserted before’ filename sed ‘/pattern/a text to be appended after’ filename “` 在filename文件中,找到匹配pattern的行,在该行前面插入文本text(第一个命令),或在该行后面增加文本text(第二个命令)。 3. 在文件中的每一行后面增加内容: ...
4、第一行处理结束。从新读取第二行的内容进行处理,直到最后一行。 三、sed命令的基本语法 sed OPTIONS… [SCRIPT] [INPUTFILE…] 常用的选项: -n,–quiet: 不输出模式空间中的内容 -i: 直接编辑原文件,默认不对原文件进行操作 -e: 可以使用多个命令(脚本)进行操作 ...