Este comando:
echo "Ruta secreta al sector Omega" | sudo tee /srv/andromeda/pilotos/ruta_estelar.txt
sirve para escribir un texto dentro de un archivo con permisos de administrador.
Explicación por partes
1. echo "Ruta secreta al sector Omega"
El comando echo muestra un texto por pantalla.
En este caso, genera esta salida:
Ruta secreta al sector Omega
2. |
La barra vertical se llama pipe.
Sirve para enviar la salida de un comando al siguiente.
Aquí lo que hace es mandar el texto generado por echo al comando tee.
3. sudo tee /srv/andromeda/pilotos/ruta_estelar.txt
El comando tee recoge lo que le llega por la entrada estándar y lo:
- muestra por pantalla,
- y además lo guarda en un archivo.
Como va precedido de sudo, tee se ejecuta con permisos de administrador, por lo que puede escribir en una ruta protegida.
En este caso, escribe el texto en:
/srv/andromeda/pilotos/ruta_estelar.txt
Qué hace en conjunto
El comando completo:
- genera el texto
"Ruta secreta al sector Omega", - lo envía a
tee, teelo escribe dentro del archivo indicado,- y además lo muestra en pantalla.
Resultado
El archivo ruta_estelar.txt quedará con este contenido:
Ruta secreta al sector Omega
¿Por qué no usar directamente >?
Podrías pensar en hacer:
sudo echo "Ruta secreta al sector Omega" > /srv/andromeda/pilotos/ruta_estelar.txt
Pero eso no funciona como se espera en muchos casos.
La razón es que:
sudose aplica aecho,- pero la redirección
>la intenta hacer el usuario actual, - y ese usuario quizá no tiene permisos para escribir en esa carpeta.
Por eso tee es muy útil: porque quien escribe realmente en el archivo es tee, y como lleva sudo, sí tiene permisos.
Diferencia entre crear y añadir contenido
Sobrescribir el archivo
echo "Texto nuevo" | sudo tee archivo.txt
Esto reemplaza el contenido anterior.
Añadir al final del archivo
echo "Otra línea" | sudo tee -a archivo.txt
La opción -a significa append, es decir, añadir al final sin borrar lo que ya había.
Ejemplo
Crear el archivo con una línea
echo "Primera línea" | sudo tee /tmp/prueba.txt
Añadir otra línea
echo "Segunda línea" | sudo tee -a /tmp/prueba.txt
Ver el contenido
cat /tmp/prueba.txt
Salida:
Primera línea
Segunda línea
Resumen
| Parte | Función |
|---|---|
echo "texto" | genera un texto |
| ` | ` |
tee archivo | muestra el texto y lo guarda en un archivo |
sudo tee archivo | guarda el texto en un archivo con permisos de administrador |








