Skip to content

Instantly share code, notes, and snippets.

@ManInTheBox
Created October 31, 2013 15:48
Show Gist options
  • Save ManInTheBox/7252038 to your computer and use it in GitHub Desktop.
Save ManInTheBox/7252038 to your computer and use it in GitHub Desktop.
curl info
-w, --write-out <format>
Defines what to display on stdout after a completed and success-
ful operation. The format is a string that may contain plain
text mixed with any number of variables. The string can be spec-
ified as "string", to get read from a particular file you spec-
ify it "@filename" and to tell curl to read the format from
stdin you write "@-".
The variables present in the output format will be substituted
by the value or text that curl thinks fit, as described below.
All variables are specified as %{variable_name} and to output a
normal % you just write them as %%. You can output a newline by
using \n, a carriage return with \r and a tab space with \t.
NOTE: The %-symbol is a special symbol in the win32-environment,
where all occurrences of % must be doubled when using this
option.
The variables available at this point are:
url_effective The URL that was fetched last. This is most mean-
ingful if you've told curl to follow location:
headers.
http_code The numerical response code that was found in the
last retrieved HTTP(S) or FTP(s) transfer. In
7.18.2 the alias response_code was added to show
the same info.
http_connect The numerical code that was found in the last
response (from a proxy) to a curl CONNECT
request. (Added in 7.12.4)
time_total The total time, in seconds, that the full opera-
tion lasted. The time will be displayed with mil-
lisecond resolution.
time_namelookup
The time, in seconds, it took from the start
until the name resolving was completed.
time_connect The time, in seconds, it took from the start
until the TCP connect to the remote host (or
proxy) was completed.
time_appconnect
The time, in seconds, it took from the start
until the SSL/SSH/etc connect/handshake to the
remote host was completed. (Added in 7.19.0)
time_pretransfer
The time, in seconds, it took from the start
until the file transfer was just about to begin.
This includes all pre-transfer commands and nego-
tiations that are specific to the particular pro-
tocol(s) involved.
time_redirect The time, in seconds, it took for all redirection
steps include name lookup, connect, pretransfer
and transfer before the final transaction was
started. time_redirect shows the complete execu-
tion time for multiple redirections. (Added in
7.12.3)
time_starttransfer
The time, in seconds, it took from the start
until the first byte was just about to be trans-
ferred. This includes time_pretransfer and also
the time the server needed to calculate the
result.
size_download The total amount of bytes that were downloaded.
size_upload The total amount of bytes that were uploaded.
size_header The total amount of bytes of the downloaded head-
ers.
size_request The total amount of bytes that were sent in the
HTTP request.
speed_download The average download speed that curl measured for
the complete download. Bytes per second.
speed_upload The average upload speed that curl measured for
the complete upload. Bytes per second.
content_type The Content-Type of the requested document, if
there was any.
num_connects Number of new connects made in the recent trans-
fer. (Added in 7.12.3)
num_redirects Number of redirects that were followed in the
request. (Added in 7.12.3)
redirect_url When a HTTP request was made without -L to follow
redirects, this variable will show the actual URL
a redirect would take you to. (Added in 7.18.2)
ftp_entry_path The initial path libcurl ended up in when logging
on to the remote FTP server. (Added in 7.15.4)
ssl_verify_result
The result of the SSL peer certificate verifica-
tion that was requested. 0 means the verification
was successful. (Added in 7.19.0)
If this option is used several times, the last one will be used.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment