Dada la entrada¿Por qué falla este `grep -o` y cómo debo evitarlo?
echo abc123def | grep -o '[0-9]*'
en un ordenador (con GNU grep 2.5.4), esto devuelve 123
, y en otra (con GNU grep 2.5.1) devuelve la cadena vacía. ¿Hay alguna explicación para por qué grep 2.5.1 falla aquí, o es solo un error? Estoy usando grep -o
de esta manera en un script bash que me gustaría poder ejecutar en diferentes computadoras (que pueden tener diferentes versiones de grep). ¿Hay una "forma correcta" de obtener un comportamiento consistente?
¿Por qué querrías grep en una expresión regular que puede coincidir con cero caracteres, de todos modos? Esperaría que coincidiera con cada línea, no solo líneas con dígitos en ellas. –