我试图在'height = xxx'上做一个非常简单的grep --only-matching,结果很奇怪,如截图所示。
有人知道它是什么吗?
GNU bash,版本3.2.57(1)-release(x86_64-apple-darwin17) 版权所有(C)2007 Free Software Foundation,Inc。
答案 0 :(得分:1)
可能通过某些别名,您的系统强制grep
输出为彩色。别这么做。
在我的系统上,代码生成正确的输出:
$ echo "$value" | grep -Eo 'height=[0-9]+' | grep -Eo '[0-9]+'
532
但是,如果我强制颜色,那么我会看到你看到的输出:
$ echo "$value" | grep -Eo --color=always 'height=[0-9]+' | grep -Eo '[0-9]+'
01
31
532
不要强迫颜色。通常,对于一个或多个bash初始化文件来设置别名以使命令的交互使用更令人愉快。在您的别名中,将--color=always
替换为--color=auto
。