[Bash] Eliminar todo lo que sigue después de un espacio en una cadena

Resuelto
Gau36o Mensajes publicados 14 Estado Miembro -  
Gau36o Mensajes publicados 14 Estado Miembro -
Hola,

Principiante en Bash, tengo una cadena almacenada en una variable.

Por ejemplo: miVar="esto 001 es un ejemplo 5600"

Para eliminar una ocurrencia estricta como esto (incluyendo el espacio tras la palabra esto) de la cadena anterior, sin problema, hago:
line1=${miVar#*esto }


Después de este tratamiento, ahora me gustaría eliminar el espacio y todo lo que sigue a ese espacio, después del patrón 001.
Sabiendo que 001 es necesariamente un grupo de cifras pero de longitud variable (entre 2 y 6 caracteres).

He intentado haciendo:
line2=${line1#* }

Así como otros intentos, pero no consigo el resultado deseado....

Cualquier ayuda es bienvenida :-)

Gracias de antemano!

Configuración: Windows / Chrome 58.0.3029.110

3 respuestas

  1. dubcek Mensajes publicados 18627 Fecha de registro   Estado Colaborador Última intervención   5 660
     
    hola
    o con una tabla
    $ maVar="ceci 001 est un exemple 5600" 
    $ t=($maVar)
    $ echo ${t[0]}
    ceci
    $ echo ${t[1]}
    001
    2
    1. Gau36o Mensajes publicados 14 Estado Miembro
       
      Hola,
      ¡Gracias por esta respuesta!
      Me conviene mucho más ese método :)
      0
  2. Gau36o Mensajes publicados 14 Estado Miembro
     
    Problema resuelto al final...

    Si acaso puede ayudar a alguien...
    line2=$(echo $line1 | cut -d " " -f 1)


    Entonces el resultado truncado de la variable se guarda en $line2
    0
  3. zipe31 Mensajes publicados 34620 Fecha de registro   Estado Colaborador Última intervención   6 502
     
    Hola,

    También se puede hacer esto:

    $ maVar="ceci 001 est un exemple 5600"

    $ echo "${maVar}"
    ceci 001 est un exemple 5600

    $ echo "${maVar#* }"
    001 est un exemple 5600

    $ echo "${maVar##* }"
    5600

    $ echo "${maVar% *}"
    ceci 001 est un exemple

    $ echo "${maVar%% *}"
    ceci


    --
    _______________________________ ☯ Zen my nuggets ☮ ______________________________
    Faites un gesto por el medioambiente, cierren sus ventanas y adopten un pingüino… 🐧
    0