RegEx with grep for Linux



需要在命令行中运行CentOS获得一些帮助,但最终将用于Linux构建。我在这里的论坛上看了看,并尝试了RegEx构建工具,我知道RegEx的sytax是正确的,但显然它不起作用。

以下选项已尝试过多种组合,而不是全部组合。ioFE

3 packets transmitted, 3 received, 0% packet loss, time 2002ms ping -c 3 192.168.0.113 | grep '(?<=received,)(.*)(?=,)'

我觉得这应该有效,但鉴于我对regex的了解,我不确定缺少了什么。我做错了什么?

已更新。两个答案都有效:

ping -c 3 192.168.0.113 | grep -Po '(?<=received,)(.*)(?=,)'

ping -c 3 192.168.0.113 | grep -Po 'received,K[^,]+'

grep -P '(?<=received,)(.*)(?=,)'

您必须启用-P模式,正则表达式才能工作。您的正则表达式是正确的。请参阅此处

最新更新