sed - 打印行号的行范围
问题描述
打印一系列行的答案已经结束。
sed -n '10,20p' <file>
打印 的第 10 到 20 行file
。打印与模式匹配的行号的答案也已经结束:
sed -n '/pattern/=;p;' <file>
我如何将两者结合起来?我想打印第 170 到 201 行,并且我想用 sed 来识别我正在打印的行号。
解决方案
这对我有用。
示例文件
first
second
third
fourth
fifth
命令
cat sample.txt | sed '2,4{=;p}'
输出
2
second
3
third
4
fourth
-
要分隔字段并在一行中显示:
cat sample.txt | sed '2,4{=;p}' | sed 'Ns/\n/ /g'
创建以下输出:
2 second
3 third
4 fourth
推荐阅读
- awk - awk 命令 - 定义单词的大小
- gitpython - 使用 GitPython 下载特定版本
- c# - 带有 Swagger 的通用 ApiController 基类
- android - 为什么 popBackStack 不使用 FragmentStatePagerAdapter 恢复到上一个片段?
- php - 无法制作 JSON 多级 PHP
- gcc - 与系统库动态或静态链接的库的交叉编译
- r - 拆分单元格的内容并创建一个新列表
- python - 如何在字符串的二进制表示中将 'b' 替换为 0 或 1
- java - 如何从地址位置获取直接字节缓冲区
- html - 为什么这个 HTML 有效