Cómo usar el comando Tee en Linux

27 feb 2021 2 min di lettura
Cómo usar el comando Tee en Linux
Indice dei contenuti

Introducción

El tee lee la entrada estándar y escribe tanto en la salida estándar como en uno o más archivos simultáneamente. tee se utiliza principalmente junto con otros comandos a través de tuberías.

En este tutorial, cubriremos los conceptos básicos del uso del comando tee

Sintaxis del comando Tee

La sintaxis del tee es la siguiente:

tee [OPTIONS] [FILE]
  • OPTIONS:
  • -a ( --append ): no sobrescriba archivos en lugar de agregarlos a archivos de datos.
  • -i ( --ignore-interrupts ) - Ignora las señales de interrupción.
  • Utilice tee --help para ver todas las opciones disponibles.
  • FILE_NAMES: uno o más archivos. Cada uno de los cuales se escriben los datos de salida.

Cómo usar el comando Tee

El uso más básico de la tee comando es para ver el estándar de stdout salida de un programa y escribir en un archivo.

En el siguiente ejemplo, usamos el df para obtener información sobre la cantidad de espacio en disco disponible en el sistema de archivos. La salida se redirige al tee, que muestra la salida en el terminal y escribe la misma información en el archivo disk_usage.txt

df -h | tee disk_usage.txt
Filesystem Size Used Avail Use% Mounted on
 dev 7.8G 0 7.8G 0% /dev
 run 7.9G 1.8M 7.9G 1% /run
 /dev/nvme 212G 159G 43G 79% /tmpfs 7.9G 357M 7.5G 5% /dev/shm
 tmpfs 7.9G 0 7.9G 0% /sys/fs/cgroup
 tmpfs 7.9G 15M 7.9G 1% /tmp
 /dev/nvme 511M 107M 405M 21% /boot
 /dev/sda1 459G 165G 271G 38% /data
 tmpfs 1.6G 16K 1.6G 1% /run/user/120

Puede ver el contenido del disk_usage.txt usando el comando cat.

Escribir en varios archivos

El tee también puede escribir en varios archivos. Para hacer esto, especifique una lista de archivos separados por espacios como argumentos:

command | tee file1.out file2.out file3.out

Agregar al archivo

De forma predeterminada, el tee sobrescribirá el archivo especificado. Use la -a ( --append ) para agregar la salida al archivo:

command | tee -a file.out

Ignorar descanso

Para ignorar las interrupciones, use la -i ( –ignore-interrupt ). Esto es útil cuando detiene el comando mientras ejecuta CTRL + C.

command | tee -i file.out

Ocultar la salida

Si no desea que el tee escriba en la salida estándar, puede redirigirlo a /dev/null:

command | tee file.out >/dev/null

Usar camisetas junto con sudo

Supongamos que desea escribir en un archivo propiedad de root como usuario sudo. El siguiente comando fallará porque sudo no realiza la redirección de salida. La redirección se realiza como un usuario sin privilegios.

sudo echo "newline" > /etc/file.conf

La salida se verá así:

bash: /etc/file.conf: Permission denied

Simplemente anteponga sudo antes del tee como se muestra a continuación:

echo "newline" | sudo tee -a /etc/file.conf

tee recibirá la salida del comando echo, aumentará los permisos para sudo y escribirá en el archivo.

El uso de tee junto con el sudo le permitirá escribir en archivos propiedad de otros usuarios.

Conclusión

El tee lee la entrada estándar y la escribe en la salida estándar y en uno o más archivos.

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.