首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用linux命令sed选择多行

使用linux命令sed选择多行
EN

Stack Overflow用户
提问于 2012-10-02 08:07:16
回答 2查看 17.3K关注 0票数 8

我有一个示例文件,我想获取第3-6行和第11 - 13行,然后使用一行命令进行排序,并将其另存为3_6-11_13。以下是我到目前为止使用过的命令,但尚未获得所需的输出:

代码语言:javascript
运行
复制
sed -n '/3/,/6/p'/11/,/13/p file_1 > file_2 | sort -k 2 > file_2  & sed -n 3,6,11,13p file_1 > file_2 | sort -k 2 file_2.

有没有更好的方法来缩短这个时间。我曾经考虑过使用awk,但是到目前为止我还在使用sed吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-10-02 08:18:18

使用sed,您可以按数字指定地址,如下所示:

代码语言:javascript
运行
复制
sed -n '3,6p'

-n是为了防止sed自动打印输出。

然后,如果您使用gsed,则可以通过用分号分隔这些命令来运行多个命令:

代码语言:javascript
运行
复制
sed -n '3,6p; 11,13p' | sort -k2 > 3_6-11_13
票数 19
EN

Stack Overflow用户

发布于 2012-10-02 08:13:18

使用-e选项组合多个命令

代码语言:javascript
运行
复制
$ sed -e 'comm' -e 'comm' file.txt

或者,可以使用分号分隔命令

代码语言:javascript
运行
复制
$ sed 'comm;comm;comm' file.txt
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12682810

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档