sed合并多条指令修改文本

摘要:
您需要使用shell修改配置文件。您需要删除最后一行并在特定位置添加一行,例如:修改前的这一行是文件的开头…结尾删除这一行修改后的这一行将是文件的开始新的内容在这里…结尾当考虑文件时,很容易想到sed-i用于文件操作。连续两次使用sed命令太长,因此需要合并它。实施和使用;对于多个sed指令

需求

使用shell修改配置文件,需要删除最后一行并在某特定位置加上一行内容,例如:
修改前

This_is_the_beginning
...
End_of_file
Delete_this_line

修改后

This_is_the_beginning
New_content_here
...
End_of_file

思考

很容易想到sed -i进行文件操作,连续使用两次sed命令太长,希望合并。

实现

使用;对多条sed指令进行连接

sed -i '$ d;/This_is_the_beginning/a New_content_here' ~/config.yaml 

解析
$ d 删除最后一行
/foo/a bar 将bar插入到第一次匹配到的foo行后

参考

Combining two sed commands - Stack Overflow

免责声明:文章转载自《sed合并多条指令修改文本》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇word之常用功能oracle 理解执行计划下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

通过grep,awk,sed的简单应用获取网卡信息。

本文主要通过shell命令来实现获取网卡信息。通过cmd_shell函数可以将运行命令后的输出返回。    int cmd_shell(char *shellcmd, char *outbuffer, int size) { FILE *stream; char buffer[size]; memset(buffer, 0...

日志分析查看——grep,sed,sort,awk运用

概述         我们日常应用中都离不开日志。可以说日志是我们在排查问题的一个重要依据。但是日志并不是写了就好了,当你想查看日志的时候,你会发现线上日志堆积的长度已经超越了你一行行浏览的耐性的极限了。于是,很有必要通过一些手段来高效地辅助你来快速的从日志中找到你要找的问题。本文通过一个从项目中衍生出来的例子从查找日志,筛选日志和统计日志3个方面层层递进...

Linux中往文件中的某行插入数据 以及 行列转化的做法(paste、xargs等)

sed -i 'nix' test.file        表示向test.file文件里的第n行的前面添加x内容sed -i 'nax' test.file       表示向test.file文件里的第n行的后面添加x内容 sed -i '/m/ix' test.file     表示向test.file文件里匹配m字符串的行的前面添加x内容sed -...

sed-文本处理

sed 命令 sed是一种流编辑器,它是文本处理中非常中的工具,能够完美的配合正则表达式使用,功能不同凡响。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输...

linux 三剑客命令(grep,sed ,awk)

grep 命令 :强大的文本’搜索’工具 1.grep -n 'word' file_name 在file_name文件中找到word所在的所有行并显示。-n 为显示行号。 2.grep 'w[ea]ll' file_name 在file_name文件中找到wall 或者是well 所在的所有行并显示 3.g...

Linux打印输出指定行

打印前 N 行内容 # head 打印前 6 行内容 head -6 file.txt head -n 6 file.txt # sed 打印前 6 行内容 sed -n '1,6p' file.txt # awk 打印前 6 行内容 awk 'NR<6' file.txt 打印指定行内容 # sed 打印第 6 行内容 sed -n '6p'...