Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Cómo extraer cadenas que coincidan con expresiones regulares en la programación de shell?

¿Cómo extraer cadenas que coincidan con expresiones regulares en la programación de shell?

a=$( expr 'helloworld20140501.txt' : '.*\([0-9]\{8\}\).*' )

echo $a

linux El shell puede asignar el resultado del comando a una variable. Un comando en el formato $(comando) devolverá la cadena de resultado después de la ejecución.

Después de ejecutar el comando anterior, el valor de la variable a es 20140501.

a=`echo ' helloworld20140501.txt'|sed 's/.*\([0-9]\{8\}\).*/\1/'`

Este comando realiza la misma operación, a la variable a se le asigna el valor 20140501