Commands.page Logo

Syntax to Download File and Save Logs in Ubuntu

This guide explains how to download files on Ubuntu while simultaneously recording command output and errors to a log file. It covers the standard syntax for popular command-line tools like wget and curl, ensuring you maintain a record of transfer status and potential issues for future reference.

Using wget with Log Output

The wget utility is pre-installed on most Ubuntu systems and includes a specific flag for logging. To download a file and save the log to a specific file, use the -o option followed by the log filename.

wget -o download.log https://example.com/file.zip

This command downloads the file and writes all output messages to download.log. By default, wget saves the downloaded file to the current directory unless specified otherwise with the -O flag.

Using curl with Redirection

If you prefer using curl, you must use shell redirection to capture logs because curl does not have a dedicated log flag like wget. You can combine standard output and standard error into a single log file while downloading.

curl -O https://example.com/file.zip > download.log 2>&1

In this syntax, -O saves the remote file with its original name. The > operator redirects output to download.log, and 2>&1 ensures error messages are included in the same log file.

Appending to Existing Logs

To add new download logs to an existing file without overwriting previous entries, you must use the append syntax. For wget, replace the -o flag with -a.

wget -a download.log https://example.com/file.zip

For curl or general commands, replace the single greater-than sign with two greater-than signs.

curl -O https://example.com/file.zip >> download.log 2>&1

Verifying the Log Content

After the download completes, you can view the contents of your log file to check for errors or confirmation messages. Use the cat command to display the full log in the terminal.

cat download.log

Alternatively, use tail to view the last few lines of the log to confirm the transfer status quickly.

tail download.log