Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is there a way to give a specific file name when saving a file via cURL?

People also ask

How do I save a file in curl?

Grab file with curl run: $ curl https://your-domain/file.pdf. Get file using ftp or sftp protocol: $ curl ftp://ftp-your-domain-name/file.tar.gz. You can set the output file name while downloading file with the curl, execute: $ curl -o file.

Where does curl save files?

The file will be saved to the current directory that you are working in. To save the file in a different directory, change the working directory before running the Curl command. If the file already exists, it will be overwritten.

Does curl save the data to a file by default or does it just output to the terminal?

1M is 1048576 bytes. curl displays this data to the terminal by default, so if you invoke curl to do an operation and it is about to write data to the terminal, it disables the progress meter as otherwise it would mess up the output mixing progress meter and response data.


Either use the -o option or its alias --output, or redirect shell output to the file of choice by using >.

curl -o /path/to/local/file http://url.com
curl http://url.com > /path/to/local/file

If you want to preserve the original file name from the remote server, use the -O option or its alias --remote-name.

curl -O http://url.com/file.html 

Stores the output from the remote location in the current directory as file.html.


curl -o <name> <url> seems to do the trick..

HINT: You can also try with man curl...


For those who are getting familiar with CURL, here is a more clear and easy to understand use case example:

REMOTE URL

http(s)://my-remote-image.png?token=TOKEN_ID

CURL COMMAND IN ACTION (lowercase "o")

curl -o custom_name_to_be_used.png "http(s)://my-remote-image.png?token=TOKEN_ID"