En un script bash, debo descargar un archivo de la web. Utilizo el wget
comando para hacer esto. Me gustaría registrar la salida del wget
comando y, "al mismo tiempo", mostrar la salida en la terminal.
Busqué en el man wget
sin encontrar la manera de lograrlo.
Parece que si activa el registro con el parámetro -o
o -a
, la salida del mensaje se "redirige" automáticamente al archivo de registro y no se muestra nada en el terminal mientras se ejecuta el script, hasta que se completa la descarga.
wget -a wget_log --no-check-certificate --auth-no-challenge --http-user=$jen_uname --http-password=$jen_psswd link_to_the_file
¿Es posible hacer ambas cosas? ¿Salida cuando se le solicita y escritura en el archivo de registro?
Respuesta1
Usas el encantador tee
comando para hacer esto:
wget --no-check-certificate --auth-no-challenge --http-user=$jen_uname --http-password=$jen_psswd 2>&1 | tee -a wget_log
Esto 2>&1
significa que STDERR va al mismo lugar que STDOUT y ambos están conectados a tee
. Los -a
medios se adjuntan. tee
Luego enviará la salida tanto a wget_log como a STDOUT.