如何解决如何从 Unix 上的文本文件中提取预定范围的行?
sed -n '16224,16482p;16483q' filename > newfile
从sed 手册:
- 打印出模式空间(到标准输出)。此命令通常仅与 -n 命令行选项一起使用。
- 如果未禁用自动打印,则打印模式空间,然后无论如何用下一行输入替换模式空间。如果没有更多输入,则 sed 退出,不再处理任何命令。
sed 脚本中的地址可以是以下任何一种形式:
指定行号将仅匹配输入中的该行。
可以通过指定用逗号 (,) 分隔的两个地址来指定地址范围。地址范围匹配从第一个地址匹配的位置开始的行,并一直持续到第二个地址匹配(包括)。
解决方法
我有一个约 23000 行的 SQL
转储,其中包含几个数据库的数据。我需要提取该文件的某个部分(即单个数据库的数据)并将其放入一个新文件中。我知道我想要的数据的开始行号和结束行号。
有谁知道一个 Unix 命令(或一系列命令)从一个文件中提取所有行,比如第 16224 行和第 16482 行之间的行,然后将它们重定向到一个新文件中?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。