计算机基础
linux
【Q070】如何用 linux 命令输出文件的特定行

如何用 linux 命令输出文件的特定行

Issue 欢迎在 Gtihub Issue 中回答此问题: Issue 71 (opens in a new tab)

Author 回答者: shfshanyue (opens in a new tab)

通常使用 sed 命令打印特定行,如

# -n: 按特定格式打印
# 100p: 指打印第一百行
$ sed -n 100p Readme.md

sed 打印的本领,远不止于此,除了打印特定行,还可以打印一段范围的行,如

# 打印文件中第 100-120 行
$ sed -n 100,120p Readme.md
 
# 打印文件中第 100-120 行
$ sed -n 100,+20p Readme.md

还有一种本办法,head/tail 的组合命令,以要输出第100行为例

# 输出前100行,再通过 pipe,输出最后一行
$ head -100 Readme.md | tail -1

关于 sed 更多的用法可以参考我的文章: sed 命令详解及示例 (opens in a new tab)

总结

两种方法

  1. sed -n 100p Readme.md
  2. head -100 Readme.md | tail -1