wget un archivo, registrando el resultado y mostrando el resultado cuando se le solicite

wget un archivo, registrando el resultado y mostrando el resultado cuando se le solicite

En un script bash, debo descargar un archivo de la web. Utilizo el wgetcomando para hacer esto. Me gustaría registrar la salida del wgetcomando y, "al mismo tiempo", mostrar la salida en la terminal.

Busqué en el man wgetsin encontrar la manera de lograrlo.

Parece que si activa el registro con el parámetro -oo -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 teecomando 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>&1significa que STDERR va al mismo lugar que STDOUT y ambos están conectados a tee. Los -amedios se adjuntan. teeLuego enviará la salida tanto a wget_log como a STDOUT.

información relacionada