首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从grep得到的结果按它们出现的顺序?

问从grep得到的结果按它们出现的顺序?
EN

Server Fault用户
提问于 2009-09-18 17:32:27
回答 3查看 7.2K关注 0票数 2

我正在尝试grep一个日志文件,只显示与某个会话ID匹配的行。但是,当我得到grep命令的结果时,我不会按照条目出现的顺序得到它们。

如果目录中的日志文件具有以下数据:

代码语言:javascript
复制
SESSNUM=4437 login.jsp
SESSNUM=4437 welcome.jsp
SESSNUM=4437 info.jsp
SESSNUM=4437 logout.jsp

我输入如下:

代码语言:javascript
复制
grep SESSNUM=4437 * 

我得到这个信息:

代码语言:javascript
复制
SESSNUM=4437 logout.jsp
SESSNUM=4437 welcome.jsp
SESSNUM=4437 login.jsp
SESSNUM=4437 info.jsp

是否有办法使grep按它们在日志文件中出现的顺序显示匹配行(S)?

谢谢!

IVR复仇者

EN

回答 3

Server Fault用户

回答已采纳

发布于 2009-09-18 17:37:26

代码语言:javascript
复制
grep SESSNUM=4437 *

Grep通常按顺序返回。您确定要从正确的日志文件中获得结果吗?如果你指定你想要的日志文件,而不是仅仅*,它会正常工作吗?

更正!目录中应该只有一个包含会话号的文件,但我不一定知道是哪个文件。

我建议您使用grep的-H选项,这样您就可以确保只从一个文件中获取内容。这应该是默认行为,但您发布的内容不包括文件名,除非您去掉了这些文件名。

代码语言:javascript
复制
   -H, --with-filename
          Print the file name for each match.  This is  the  default  when
          there is more than one file to search.
票数 7
EN

Server Fault用户

发布于 2009-09-18 19:06:51

是否有可能grep被别名为扰乱订单的东西?

但是,我认为目录中有多个文件的可能性更大。

票数 1
EN

Server Fault用户

发布于 2009-10-02 17:54:14

把这件事归咎于错误。我正在通过一个我没有注意到的额外的grep,通过将所有的东西合并到一个搜索中,我能够得到我正在寻找的订单。

谢谢你的建议。

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

https://serverfault.com/questions/66777

复制
相关文章

相似问题

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