Cómo escribir en un archivo en Bash

Cómo escribir en un archivo en Bash

Leer y escribir los archivos es una de las tareas comunes mientras escribe scripts bash. Por ejemplo, guardar la salida de un comando a un archivo o simplemente manipular los archivos en bash se utilizan diferentes comandos. Hay varias formas de escribir cualquier archivo en Bash a través de Terminal y si encuentra formas de escribir cualquier archivo mientras se guía, lea esta guía.

Escribir archivo en Bash

Como se mencionó anteriormente, hay múltiples formas de escribir cualquier archivo mientras Bash Scripting y a continuación hay algunas formas de escribir un archivo en Bash:

  • Uso de operadores direccionales
  • Usando el comando tee
  • Usando Heredoc
  • Uso del comando printf

Uso de operadores direccionales

Generalmente hay dos operadores direccionales que uno puede usar para escribir un archivo mientras Bash Scripting, uno es un soporte de ángulo único ">" y el otro es el soporte de doble ángulo ">>". La principal diferencia entre los dos es que ">" sobrescribe los datos que estaban previamente presentes en el archivo con los nuevos datos, mientras que ">> " Por otro lado, solo agrega los nuevos datos en el archivo.

Para usar cualquiera de los operadores direccionales a continuación es la sintaxis respectiva que uno debe seguir:

$ Echo <“data”>

Por ejemplo, para agregar datos a cualquier archivo que esté en blanco actualmente o para sobrescribir los datos en cualquier archivo, use la sintaxis mencionada anteriormente como esta:

$ echo "Hola Linuxhint 1"> myfile.TXT

A continuación, para usar ">>" Operador direccional para agregar cualquier dato en el archivo que he usado la sintaxis mencionada anteriormente como esta:

$ echo "Hola Linuxhint 2" >> myfile.TXT

Recuerde que la sintaxis mencionada anteriormente no solo escribe el archivo, sino que también creará un archivo si no hay alguno.

Usando el comando tee

Otra forma de escribir cualquier archivo mientras Bash Scripting es utilizando el comando Tee y a continuación es la sintaxis dada para usar este comando:

$ Echo "Datos" | tee

Por ejemplo, si quiero agregar algún dato a cualquier archivo, la sintaxis mencionada anteriormente se puede usar de la misma manera:

$ Echo "Bienvenido a Linuxhint" | tee myfile.TXT

Recuerde que la sintaxis anterior utilizada es beneficiosa no solo para escribir los datos, sino que también se puede usar en caso de que alguien quiera sobrescribir los datos que están actualmente presentes en el archivo con los nuevos datos.

Entonces, si desea mantener los datos actuales y desea escribir el archivo con un nuevo conjunto de datos, use -a bandera con la sintaxis dada como:

$ Echo "Saludos" | tee -A myfile.TXT

Si desea agregar los mismos datos a varios archivos, entonces este comando puede ser de gran ayuda, el tee El comando se puede utilizar para un propósito como este:

$ Echo "Saludos" | Tee -A myFile1.txt myFile2.txt myFile3.TXT

Otro beneficio de usar este comando es que se puede editar un archivo que es propiedad de los otros usuarios con la ayuda de usar privilegios de administración como este:

$ Echo "Este es un archivo de prueba" | sudo tee -a myfile1.TXT

Uso del comando printf

Dado que las formas mencionadas anteriormente no le dan la libertad al usuario para agregar formateo a los datos, por lo que si desea agregar formateo específico a los datos, entonces printf se puede usar así:

$ printf “Saludos de Linuxhint \ nthis es un archivo de prueba.\ n ”>> myFile1.TXT

Usando Heredoc

Otra forma de escribir un archivo en Bash es usar el Documento aquí Formato, no es ningún tipo de comando, pero es más como un formato que uno puede seguir para escribir múltiples líneas de datos, a continuación se muestra el formato de HEREDOC:

gato << [delimiter]
datos…
[delimitador]

Aquí en la sintaxis se usa para leer los datos y delimitador es una especie de límite para los datos; podría ser un nombre de cadena o archivo. En la práctica normal, la práctica generalmente se usa o EOF se usa como delimitador, pero todo depende de la preferencia del usuario.

Por ejemplo, he creado un .archivo sh y usó el formato de Heredoc como este:

#! /bin/bash
gato << MYFILE
Saludos desde Linuxhint
Este es un archivo de prueba creado usando HEREDOC
MI ARCHIVO

Ahora para ver si los datos se guardan correctamente, ejecutemos este archivo usando:

$ bash mybashscript.mierda

Conclusión

Escribir archivos mientras Bash Scripting en un sistema de Linux es un trabajo difícil si uno no tiene un conocimiento sólido de usar comandos de Linux. Esta guía ofrece 4 formas de escribir cualquier archivo mientras BASH Scripting que sean: usando operadores direccionales, tee dominio, printf y HEREDOC.