加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

bash – 比较执行日志忽略执行时间

发布时间:2020-12-16 01:46:45 所属栏目:安全 来源:网络整理
导读:我是 Linux SO和bash命令的新手,我认为有更多经验的人可以帮助我.我想比较2个不同的文本文件和执行日志,但有些行(不是全部)以时间’标记开头,如下所示: 12345 ps line 1 content 23456 ps line 2 content line 3 content 345 ps line 4 content 这些令牌在
我是 Linux SO和bash命令的新手,我认为有更多经验的人可以帮助我.我想比较2个不同的文本文件和执行日志,但有些行(不是全部)以时间’标记开头,如下所示:

12345 ps line 1 content 
23456 ps line 2 content 
line 3 content 
345 ps line 4 content

这些令牌在每个日志中都有不同的值,但是,在那个比较中,我不关心它们,我只想比较行内容并忽略它们.我可以使用’sed’命令生成没有该令牌的新文件,然后使用它们,但我假装反复这样做,如果我只使用一个命令或一个sh文件,可以节省一些时间.我试过用’sed’和’diff’组合,但没有成功.有人可以帮助我吗?

解决方法

您可以使用以下sed one liner从文件开头删除数字:

sed 's/^[0-9]* ps//g' file1

要区分两个这样的文件(较少的时间戳),您可以使用process substitution.

diff <(sed 's/^[0-9]* ps//g' file1) <(sed 's/^[0-9]* ps//g' file2)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读