Cómo agregar una línea a un archivo en bash

A veces necesitamos trabajar con un archivo con fines de programación, y la nueva línea requiere agregarla al final del archivo. Esta tarea de anexión se puede realizar mediante los comandos echo ‘ y ‘ tee ‘. El uso de ‘ &gt&gt’ con el comando echo’ agrega una línea a un archivo. Otra forma es usar los comandos ‘echo’, pipe (|) y ‘tee’ para agregar contenido a un archivo. En este artículo se muestra cómo se pueden usar estos comandos en el script bash.

Cree un archivo de texto llamado books.txt con el siguiente contenido para hacer los ejemplos que se muestran en la siguiente parte de este artículo.

books.txt:

Learning PHP and MySQL
Learning Laravel
Web Design using HTML

Ejemplo-1: Anexar línea al archivo usando el comando ‘echo’ y el símbolo ‘&gt&gt’

En la siguiente secuencia de comandos, se asigna un archivo existente, books.txt a la variable, el nombre del archivo y se tomará un valor de cadena como entrada del usuario para agregar al final del archivo. Si el valor de entrada no está vacío, entonces el comando echo’ agregará el valor al archivo books.txt usando el símbolo &gt&gt ‘.

#!/bin/bash

# Define the filename
filename=‘books.txt’

# Type the text that you want to append
read -p “Enter the text that you want to append:” newtext

# Check the new text is empty or not
if [ $newtext != ] then
      # Append the text by using ‘&gt&gt’ symbol
      echo $newtext &gt&gt $filename
fi

Producción:

Learning JQuery ‘ se toma como un nuevo valor de texto en la salida que se adjunta al final del archivo.

Ejemplo-2: Anexar línea al archivo usando el comando ‘printf’ y el símbolo ‘&gt&gt’

 

El símbolo &gt&gt ‘ se puede usar con el comando printf’ para agregar contenido formateado a un archivo. Como en el ejemplo anterior, el nombre del archivo y los valores de la cadena se asignan a las variables, el nombre del archivo y el nuevo texto . A continuación, el comando printf ‘ redirigirá el valor de newtext con otro texto al final del archivo books.txt .

#!/bin/bash

# Define the filename
filename=‘books.txt’

# Type the text that you want to append
read -p “Enter the text that you want to append:” newtext

# Check the new text is empty or not
if [ $newtext != ] then
      # Append the text by using ‘&gt&gt’ symbol
      printf “Appended text is: %sn $newtext &gt&gt $filename
fi

Producción:

Sitio web de WordPress ‘ se toma como un nuevo valor de texto en la salida que se adjunta al final del archivo.

Ejemplo-3: Anexar línea al archivo usando el comando `tee`

tee’ es otro comando útil para agregar cualquier cadena a un archivo. En la siguiente secuencia de comandos, el nombre de archivo y los nuevos valores de texto se asignan como en los ejemplos anteriores. Si el valor del texto no está vacío, entonces el comando echo ‘ enviará el valor al comando tee ‘ usando ‘ | ‘símbolo. La opción -a ‘ se usa con el comando tee ‘ aquí para agregar el valor de entrada recibido al archivo books.txt . ‘/ dev / null’ se usa en el script para evitar mostrar la salida en la terminal.

#!/bin/bash

# Define the filename
filename=‘books.txt’

# Type the text that you want to append
read -p “Enter the text that you want to append:” newtext

# Check the new text is empty or not
if [ $newtext != ] then
      # Append the text by using `tee` command
      echo $newtext | tee -a  $filename &gt /dev/null
fi

Producción:

Learning CSS3 ‘ se toma como un nuevo valor de texto en la salida que se adjunta al final del archivo.

Conclusión:

En este artículo se muestran tres formas diferentes de agregar texto al final de un archivo usando un script bash.

Leave a Comment

Your email address will not be published. Required fields are marked *

Hazlo Linux