【发布时间】:2015-11-15 15:44:15
【问题描述】:
这是我正在尝试做的一个简单示例。
echo "1234567" | grep -inoE "12|34|56"
上面的命令给出以下输出:
1:12
34
56
意味着它在第 1 行找到了 3 个匹配项:12、34 和 56。
但是,我希望输出显示每一行的数字:
1:12
1:34
1:56
我正在使用 grep (BSD grep) 2.5.1-FreeBSD
【问题讨论】:
-
对我来说,它显示了第二种格式。
grep (GNU grep) 2.21. -
对不起,我忘了说我在 mac 上,并且使用 BSD grep。我已经更新了问题。
-
所以最好的解决方案可能是使用 GNU grep :) 否则,将需要使用
awk进行某种后处理。