No estoy claro cuál es el mejor orden para capturar ambos STDERR
y STDOUT
para el mismo archivo usando tee
. Sé que si quiero canalizar a un archivo tengo que asignar el identificador de archivo después de la redirección, es decir
find . >/tmp/output.txt 2>&1
Esto indica al shell para enviar STDOUT
a /tmp/output.txt
y luego enviar STDERR
a STDOUT
(que ahora está enviando a /tmp/output.txt
).
Intentar realizar 2>&1
antes de redirigir el archivo no tendrá el efecto deseado.
Sin embargo, cuando quiero usar tuberías tee
debería ser:
find . |tee /tmp/output.txt 2>&1 # or
find . 2>&1 |tee /tmp/output.txt # ?
|&
se usa, el error estándar del comando1 se conecta a la entrada estándar del comando2 a través de la tubería; es la abreviatura de2>&1 |
. Esta redirección implícita del error estándar se realiza después de cualquier redirección especificada por el comando".