¿Cómo hacer un grep en una variable? He almacenado la salida de wget en una variable y necesito extraer algunas cadenas de ella.
Como si el contenido de la variable fuera
upgrade http://wordpress.org/download/ http://wordpress.org/wordpress-3.0.5.zip 3.0.5 en_US 4.3 4.1.2
Necesito verificar si la cadena contiene la palabra upgrade
, por lo que puedo hacer un grep simple y luego verificar el estado de salida mediante $?
y continuar.
¿Cómo puedo obtener el valor 3.0.5
? ¿Cuál es en realidad la cuarta palabra?
¿Y cómo hacer grep en una variable?
Respuesta aceptada:
Si solo está buscando una palabra, puede usar un bucle for.
STRING="upgrade this if you can" for x in $STRING; do echo $x if [ "$x" = 'upgrade' ]; then echo found y=$x break fi done echo $y
Si la actualización siempre está en la misma posición, puede intentar la asignación de matrices.
declare -a z z=($STRING) echo ${z[0]}