首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从bash的历史记录中选择行的子集?

如何从bash的历史记录中选择行的子集?
EN

Stack Overflow用户
提问于 2009-08-22 16:31:41
回答 6查看 1.3K关注 0票数 2

我经常通过grep遍历我的bash shell历史来查找旧的命令、文件路径等。在确定了感兴趣的历史记录编号之后,我希望查看两边的几行上下文,即查看历史记录行的子集。例如:

代码语言:javascript
复制
$ history | grep ifconfig

8408  ifconfig eth0
8572  sudo ifconfig eth0 down

我想看一下8572行的5条左右。显然,知道行号我可以用less浏览历史记录,但这似乎非常愚蠢。据我所知,手册页似乎也没有这个信息。

有没有一种简单的方法可以在bash中检索任意的历史记录?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2009-08-22 16:58:32

grep的-C选项提供上下文。尝试:

代码语言:javascript
复制
$ history | grep -C 5 ifconfig
票数 5
EN

Stack Overflow用户

发布于 2009-08-22 16:57:39

代码语言:javascript
复制
history | grep -C 5 ifconfig
票数 4
EN

Stack Overflow用户

发布于 2009-08-22 19:14:53

如果您只想查看特定行号,也可以使用下面这样的代码

代码语言:javascript
复制
history | head -n 120 | tail -n 5

该示例打印第116到120行。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1316382

复制
相关文章

相似问题

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