Easy file sharing from the command line

# Upload using cURL
$ curl --upload-file ./hello.txt https://transfer.sh/hello.txt https://transfer.sh/66nb8/hello.txt

# Create an alias
$ transfer hello.txt
##################################################### 100.0% https://transfer.sh/eibhM/hello.txt
ch

# Upload from web
Drag your files here, or click to browse.

# Download all your files

zip tar.gz
learn more

Made for use with shell

Share files with a URL

Upload up to 5 GB

Files stored for 14 days

For free

Encrypt your files

Sample use cases

Uploading

# Upload is easy using cURL
$ curl --upload-file ./hello.txt https://transfer.sh/hello.txt https://transfer.sh/66nb8/hello.txt

# Download the file
$ transfer hello.txt
#################################################### 100.0% https://transfer.sh/eibhM/hello.txt # Upload multiple files
$ transfer hello.txt
https://transfer.sh/eibhM/hello.txt

Create an alias and add to .bashrc

# Upload is easy using cURL
$ curl --upload-file ./hello.txt https://transfer.sh/hello.txt https://transfer.sh/66nb8/hello.txt

# Download the file
tmpfile = $( mktemp -t transfer ) curl --progress-bar --upload-file $1 https://transfer.sh/$(basename $1) >> $tmpfile; cat $tmpfile; rm -f $tmpfile; }
# Now you can just use transfer command
$ transfer hello.txt

More examples

Uploading

# Upload is easy using cURL
$ curl --upload-file ./hello.txt https://transfer.sh/hello.txt https://transfer.sh/66nb8/hello.txt

# Download the file
$ transfer hello.txt
#################################################### 100.0% https://transfer.sh/eibhM/hello.txt # Upload multiple files
$ transfer hello.txt
https://transfer.sh/eibhM/hello.txt

Create an alias and add to .bashrc

# Upload is easy using cURL
$ curl --upload-file ./hello.txt https://transfer.sh/hello.txt https://transfer.sh/66nb8/hello.txt

# Download the file
tmpfile = $( mktemp -t transfer ) curl --progress-bar --upload-file $1 https://transfer.sh/$(basename $1) >> $tmpfile; cat $tmpfile; rm -f $tmpfile; }
# 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