Upload and share your files

Easy sharing from the command-line

learn more

Made for us with shell

Share files just with a URL

Upload up to 5 GB

Files are stored for 14 days

For free

Encrypt your files

Sample use cases

Uploading

Uploading is easy using curl.

$ curl --upload-file ./hello.txt https://transfer.sh/hello.txt

Download the file.

$ curl --upload-file ./hello.txt https://transfer.sh/hello.txt

Make an alias

Create an alias, and add it to .bashrc for faster use

$ transfer() { # write to output to tmpfile because of progress bar tmpfile=$( mktemp -t transfer ) curl --progress-bar --upload-file $1 https://transfer.sh/$(basename $1) >> $tmpfile; cat $tmpfile; rm -f $tmpfile; } alias transfer=transfer

Now you can just use transfer command

$transfer hello.txt

Transfer multiple files

Upload multiple files at once

$ curl -i -F filedata=@/tmp/hello.txt -F filedata=@/tmp/hello2.txt https://transfer.sh/

Combining downloads as zip or tar archive

$ curl https://transfer.sh/(15HKz/hello.txt,15HKz/hello.txt).tar.gz
$ curl https://transfer.sh/(15HKz/hello.txt,15HKz/hello.txt).zip

Encrypt your files before the transfer

You can encrypt files using gpg. The following command will encrypt the data before it leaves your server using the password you enter and upload it to transfer.sh.

$ cat /tmp/hello.txt|gpg -ac -o-|curl -X PUT --upload-file "-" https://transfer.sh/test.txt

Encrypt and upload

$ curl https://transfer.sh/1lDau/test.txt|gpg -o- > /tmp/hello.txt

Share the love

Any questions?

contact us
Fork me on GitHub