Cómo escribir en un archivo en Bash

Leer y escribir los archivos es una de las tareas más comunes al escribir scripts bash. Por ejemplo, para guardar la salida de un comando en un archivo o simplemente para manipular los archivos en bash, se utilizan diferentes comandos. Hay varias formas de escribir un archivo en Bash a través de la terminal, y si encuentra formas de escribir un archivo mientras realiza una secuencia de comandos, consulte esta guía.

Contenidos

Escribir archivos en Bash

Como se mencionó anteriormente, en bash scripting hay varias formas de escribir un archivo y, a continuación, hay algunas formas de escribir un archivo en bash:

Uso de operadores de dirección

En general, hay dos operadores de dirección que se pueden usar para escribir un archivo cuando se ejecuta un script de bash, uno es un corchete de ángulo único «>» y el otro es un soporte de doble ángulo «>>». La principal diferencia entre los dos es que «>» sobrescribe los datos previamente presentes en el archivo con los nuevos datos, mientras que «>>” Por otro lado, solo los nuevos datos se insertarán en el archivo. Para usar cualquiera de los operadores direccionales a continuación, se debe seguir la sintaxis adecuada: $ echo <„Daten“> Por ejemplo, para agregar datos a cualquier archivo que esté actualmente vacío, o para sobrescribir los datos en cualquier archivo, use la sintaxis anterior de la siguiente manera: $ echo «Hello Linuxhint 1» > myfile.txt


Próximo a usar «>>» Operador de dirección para agregar cualquier dato en el archivo. Usé la sintaxis mencionada anteriormente como esta: $ echo «Hello Linuxhint 2» >> myfile.txt


Recuerde que la sintaxis mencionada anteriormente no solo escribe el archivo, sino que también crea un archivo si no existe uno.

Usando el comando tee

Otra forma de escribir un archivo mientras se ejecuta un script en bash es usar el comando tee y, a continuación, se muestra la sintaxis para usar este comando: $ echo «data» | té Por ejemplo, si quiero agregar datos a cualquier archivo, la sintaxis mencionada anteriormente se puede usar así: $ echo «Bienvenido a Linuxhint» | té miarchivo.txt


Tenga en cuenta que la sintaxis utilizada anteriormente no solo es beneficiosa para escribir los datos, sino que también se puede usar en caso de que alguien quiera sobrescribir los datos que se encuentran actualmente en el archivo con los nuevos datos. Entonces, si desea conservar los datos actuales y escribir el archivo con un nuevo registro, use -a Marcar con la sintaxis dada como: $ echo «saludos» | tee -a miarchivo.txt


Si desea agregar los mismos datos a varios archivos, este comando puede ser de gran ayuda El comando se puede utilizar para este propósito de la siguiente manera: $ echo «saludos» | tee -a miarchivo1.txt miarchivo2.txt miarchivo3.txt


Otro beneficio de usar este comando es que puede editar un archivo propiedad de otros usuarios usando privilegios administrativos como este: $ echo «Este es un archivo de prueba» | sudo tee -a miarchivo1.txt

Usando el comando printf

Dado que las formas anteriores no le dan al usuario la libertad de agregar formato a los datos, puede agregar un formato específico a los datos presión se puede usar así: $ printf «Saludos desde linuxhint \nEste es un archivo de prueba.\n» >> myfile1.txt

Uso de Heredoc

Otra forma de escribir un archivo en bash es usar aquí documento formato, no es una especie de comando, sino más bien un formato que se puede seguir para escribir varias líneas de datos, a continuación se muestra el formato de heredoc: cat < [delimiter]Datos…………[delimiter] Aquí, en la sintaxis, cat se usa para leer los datos y el delimitador es una especie de límite para los datos; podría ser una cadena o un nombre de archivo. En la práctica normal, se suele utilizar END o EOF como delimitador, pero todo depende de la preferencia del usuario. Por ejemplo, creé un archivo .sh y usé el formato de Heredoc así: #! /bin/bashcat << MYFILE Saludos desde LinuxhintEste es un archivo de prueba creado con heredocMYFILE
Ahora, para ver si los datos se guardan correctamente, ejecutemos este archivo con:

Conclusión

Escribir archivos mientras se ejecutan secuencias de comandos de bash en un sistema Linux es una tarea difícil a menos que se tenga un conocimiento profundo del uso de los comandos de Linux. Esta guía proporciona 4 formas de escribir cualquier archivo al crear scripts en bash, a saber: usando operadores direccionales, Dominio, presión y Heredoc.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.