bash - 如何打印特定范围的行并使用 sed 或 awk 枚举它们
问题描述
我想知道如何使用 sed 或 awk 打印特定范围的行并像这样枚举它们
HORSE
CAT
DOG
LION
MOUSE
MONKEY
SNAKE
PANDA
WOLF
TIGER
所以第 4-9 行的输出看起来像这样
1. LION
2. MOUSE
3. MONKEY
4. SNAKE
5. PANDA
6. WOLF
谢谢!
解决方案
使用范围内的关键字:
$ awk '/LION/,/WOLF/{print ++c,$0}' file
输出:
1 LION
2 MOUSE
3 MONKEY
4 SNAKE
5 PANDA
6 WOLF
或使用记录号:
$ awk 'NR==4,NR==9{print ++c,$0}' file
推荐阅读
- cakephp - 如何使用 cakedc 插件/用户和 acl 根据角色拥有不同的仪表板
- android - Softmax Tensorflow Lite 行为不正常
- css - 如果 body 是 display:flex,则 Chrome 滚动位置不会保留在后退按钮上
- php - Wordpress:仅从数据库更改一页网址
- github - 如何在不拖放的情况下将图像附加到 github 问题?
- python-3.x - 有没有一种方法可以组合使用 python 迭代多行的 2 个 txt 文件的内容?
- c - 将结构指针对象/变量声明为外部
- ajax - 使用 woocommerce 填充选择链
- spring-boot - 如何将 Long 值转换为 LongFilter?
- angular - 无法将 InjectionToken 注入服务构造函数