Ayúdanos a seguir proporcionándote tutoriales gratuitos y de calidad desactivando tu bloqueador de anuncios. suscriptores a nuestro sitio.

Cómo agregar texto a un archivo con Bash en Linux

27 feb 2021 2 min di lettura
Cómo agregar texto a un archivo con Bash en Linux
Tabla de contenidos

Introducción

En Bash, hay varias formas de agregar texto a un archivo. Este artículo explica algunos de ellos.

Para agregar texto a un archivo, debe tener permisos de escritura. De lo contrario, obtendrá un error de permiso denegado.

Utilice el operador de redireccionamiento >>

La redirección le permite tomar la salida de un comando y enviarla como entrada a otro comando o archivo. El operador de redireccionamiento >> agrega la salida a un archivo dado.

Hay una serie de comandos que puede utilizar para imprimir texto en la salida estándar y redirigirlo al archivo, siendo echo y printf los más utilizados.

Para agregar texto a un archivo, especifique el nombre del archivo después del operador de redireccionamiento:

echo "this is a new line" >> file.txt

Cuando se usa con la -e, el echo interpreta los caracteres de barra invertida de escape como una nueva línea \n:

echo -e "this is a new line \nthis is another new line" >> file.txt

Si desea producir una salida más compleja, use el printf que le permite especificar el formato de la salida:

printf "Hello, I'm %s.\n" $USER >> file.txt

Puede agregar la salida de cualquier comando a un archivo. Aquí hay un ejemplo con el comando de date

date +"Year: %Y, Month: %m, Day: %d" >> file.txt

Cuando agregue un archivo a una redirección, tenga cuidado de no usar el > que sobrescribe un archivo existente.

Usa el comando tee

tee es una utilidad de línea de comandos en Linux que lee desde la entrada estándar y escribe tanto en la salida estándar como en uno o más archivos simultáneamente.

De forma predeterminada, el tee sobrescribe el archivo especificado. Para agregar la salida al archivo, use tee con la -a ( --append ):

echo "this is a new line" | tee -a file.txt

Si no desea que tee escriba en la salida estándar, rediríjalo a /dev/null:

echo "this is a new line" | tee -a file.txt >/dev/null

La ventaja de usar el tee lugar del >> es que tee permite agregar texto a varios archivos a la vez y escribir en archivos propiedad de otros usuarios junto con sudo.

Para agregar texto a un archivo para el que no tiene permisos de escritura, anteponga sudo antes del tee como se muestra a continuación:

echo "this is a new line" | sudo tee -a file.txt

tee recibe la salida del echo y, con los permisos sudo, escribe en el archivo.

Para agregar texto a más de un archivo, especifique los archivos como argumentos para el comando tee

echo "this is a new line" | tee -a file1.txt file2.txt file3.txt

Conclusión

En Linux, para agregar texto a un archivo, use el operador de redirección >> o el comando tee

Apóyenos si le gusta nuestro contenido. Gracias.

Buy me a coffeeBuy me a coffee

Únase a la conversación

Apóyenos con una donación.

Genial! A continuación, complete el pago para obtener acceso completo a Noviello.it.
Bienvenido de nuevo! Has iniciado sesión correctamente.
Te has suscrito correctamente a Noviello.it.
Éxito! Su cuenta está completamente activada, ahora tiene acceso a todo el contenido.
Éxito! Su información de facturación ha sido actualizada.
Su facturación no se actualizó.