
原数据:
期望数据:
这里涉及两个问题:
1、只要2-4行需要自动添加行号
2、需要在Vim编辑器上执行
解决思路:
1、在Vim命令模式下指定行数
2、通过外部命令Awk可以自动生成行数
在vim的命令行模式输入:
就可以实现上述目的
释义:
1、指定行数:2,4
只要2-4行
2、执行外部命令:!awk '{print ""NR":" 2}'
!awk:执行外部命令awk
NR:行数。这里是NR行数与Vim行数不一样,而是我们输入的指定内容行行数,即2-4行内容
在awk中使用printf先后打印如下内容:要添加的行 + \n换行符
当前行 + \n换行符
例子:
awk '/匹配内容/{printf("新增的一行\n%s\n", $0)}' file.txt >result.txt
简单的方法应该用 sed 的插入行命令 i (即 insert 的意思):
sed '/匹配内容/ i\ 新增的一行' file.txt >result.txt
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)