在centos7中使用grep -E

问题描述 投票:0回答:1

我在从日志中提取 IP 时遇到问题。

journalctl | grep -E "([0-9]{1,3}\.){3}[0-9]{1,3}"
journalctl | grep -E "(\d{1,3}\.){3}\d{1,3}"

第一个语句得到后备,但第二个语句没有,我认为两者应该是等价的,为什么呢? enter image description here

我尝试询问chatgpt,但他认为这两种说法是等效的,并且没有解决我的问题。任何人都可以帮助我解决这个困惑吗?

linux centos7
1个回答
0
投票

你问为什么

\d
不等于
[0-9]
。 我也希望我可以使用速记,但每次我尝试它都不起作用。

\d
可以找到,例如在perl RE 参考中。然而,
man grep
仅提供
[:digit:]

话是这么说,但也只是这样。

© www.soinside.com 2019 - 2024. All rights reserved.