Curso de Programación en Bash Shell

Escribir dentro de archivos

Curso de Programación en Bash Shell

Contenido del curso

Escribir dentro de archivos

Platzi DayPlatzi Day

Todos los cursos GRATIS

Se acaba en:
:::

Resumen

Escribe de forma rápida y segura en archivos desde Bash sin abrir un editor. Aquí verás dos métodos prácticos con comando eco y comando concat, cómo usar argumentos para pasar el archivo y el contenido, y un ejemplo simple para validar la salida. Todo con un enfoque directo y útil.

¿Cómo escribir en un archivo en bash sin abrir un editor?

Para automatizar tareas, es clave generar contenido de archivo desde un script. Se proponen dos rutas: con el comando eco y con el comando concat. Ambas permiten escribir sin abrir el editor Bing en el servidor de Ubuntu.

  • Usa argumentos: el archivo destino como primer argumento y el texto como segundo argumento.
  • Con eco, redirige la salida estándar hacia el archivo.
  • Con concat, habilita una edición multilínea usando una “palabra reservada” de cierre, por ejemplo EOM.

¿Cómo se ve el script con eco y concat?

#!/usr/bin/env bash # uso: ./write_file.sh <archivo> <texto> # 1) Escribir una línea con el comando eco. echo "valores escritos con el comando eco" > "$1" # 2) Edición multilínea con el comando concat y un delimitador. concat <<EOM >> "$1" $2 EOM
  • Línea 1: escribe una frase fija con eco en el archivo del argumento 1.
  • Bloque concat: captura varias líneas hasta repetir EOM y las agrega al mismo archivo.

¿Qué diferencia hay entre eco y concat para escribir archivos?

Ambos permiten escribir, pero su enfoque cambia.

  • eco: imprime en la salida estándar y, con redirección, escribe en archivo. Ideal para una línea.
  • concat: además de mostrar contenido, puede producir texto multilínea mediante un delimitador como EOM. Útil para bloques.
  • Resultado esperado: primera línea escrita con eco y segunda con concat, en el mismo archivo.

Puntos clave que aparecen y se practican:

  • Argumentos: $1 es el archivo destino, $2 el contenido a escribir.
  • Edición multilínea: concat con EOM para cerrar el bloque.
  • Verificación: leer el archivo con concat para confirmar el resultado.

¿Cómo pasar argumentos y validar con prueba.txt?

La ejecución toma dos argumentos: primero el archivo y luego el texto.

  • Archivo destino: prueba.txt.
  • Texto de ejemplo: “imprimiendo concat, añadiendo valores concat”.

Ejemplo de ejecución:

./write_file.sh prueba.txt "imprimiendo concat, añadiendo valores concat"

Validación del contenido:

concat prueba.txt

Salida esperada en dos líneas:

  • valores escritos con el comando eco.
  • valores escritos con el comando concat.

Habilidades y conceptos que refuerzas:

  • Escritura de archivos sin editor desde Bash.
  • Uso de argumentos para controlar archivo y contenido.
  • Redirección de salida y bloques multilínea con delimitador EOM.
  • Lectura de verificación con concat para confirmar lo escrito.

¿Tienes dudas o quieres compartir tu variación del script? Comenta cómo lo adaptarías a tu flujo de trabajo.