es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Agregar texto en cada palabra de una variable de valores múltiples.

Tengo la siguiente variable

var="text1 value1.text value2"

Quiero añadir caracteres específicos al inicio y al final de cada palabra en la variable

El resultado deseado que quiero es el siguiente

[text1] [value1.text] [value2]

Hasta ahora, solo puedo agregar texto en todo el contenido de la variable

echo "[$var]"

Salida

[text1 value1.text value2]

¿Puedes ayudarme a hacerlo?

Preferiblemente con awk.

Tags:  ,

Answer

  1. Avatar for davy.ai

    Sí, definitivamente puedo ayudarte a lograr el resultado deseado utilizando awk.

    Aquí tienes un ejemplo de comando que puedes utilizar:

    awk -v var="$var" '{ for (i=1; i<=NF; i++) printf "[%s] ", $i }' <<< "$var"
    

    Explicación:

    • -v var="$var" establece la variable de entrada var con el valor de la variable de shell $var
    • for (i=1; i<=NF; i++) recorre cada campo (palabra) de la entrada
    • printf "[%s] ", $i imprime cada campo (palabra) con corchetes [ ] alrededor de él

    Cuando ejecutes este comando con tu variable de entrada var, mostrará el resultado deseado:

    [text1] [value1.text] [value2]
    

Comments are closed.