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

# Using the alias
$ transfer hello.txt
##################################################### 100.0% https://transfer.sh/eibhM/hello.txt

# 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

How to upload

# Uploading is easy using curl
$ curl --upload-file ./hello.txt https://transfer.sh/hello.txt
https://transfer.sh/66nb8/hello.txt
# Download the file
$ curl https://transfer.sh/66nb8/hello.txt -o hello.txt

Create an alias and add it to .bashrc or .zshrc [gist]

# Add this to .bashrc or its equivalent
transfer() { if [ $# -eq 0 ]; then echo "No arguments specified. Usage:\necho transfer /tmp/test.md\ncat /tmp/test.md | transfer test.md"; return 1; fi
tmpfile=$( mktemp -t transferXXX ); if tty -s; then basefile=$(basename "$1" | sed -e 's/[^a-zA-Z0-9._-]/-/g'); curl --progress-bar --upload-file "$1" "https://transfer.sh/$basefile" >> $tmpfile; else curl --progress-bar --upload-file "-" "https://transfer.sh/$1" >> $tmpfile ; fi; cat $tmpfile; rm -f $tmpfile; }; alias transfer=transfer

# Now you can use transfer command
$ transfer hello.txt
More examples

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

# Encrypt files with password using gpg
$ 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

Scan for malware

# Scan for malware or viruses using Clamav
$ wget http://www.eicar.org/download/eicar.com
$ curl -X PUT --upload-file ./eicar.com https://transfer.sh/eicar.com/scan

# Upload malware to VirusTotal, get a permalink in return
$ curl -X PUT --upload-file nhgbhhj https://transfer.sh/test.txt/virustotal

Backup mysql database, encrypt and transfer

# Backup, encrypt and transfer
$ mysqldump --all-databases|gzip|gpg -ac -o-|curl -X PUT --upload-file "-" https://transfer.sh/test.txt

Send email with transfer link (uses alias)

# Transfer and send email with link (uses alias)
$ transfer /tmp/hello.txt | mail -s "Hello World" user@yourmaildomain.com

Using Keybase.io

# Import keys from keybase
$ keybase track [them] # Encrypt for recipient(s)
$ cat somebackupfile.tar.gz | keybase encrypt [them] | curl --upload-file '-' https://transfer.sh/test.txt # Decrypt
$ curl https://transfer.sh/sqUFi/test.md |keybase decrypt

wget uploads also supported

# wget
$ wget --method PUT --body-file=/tmp/file.tar https://transfer.sh/file.tar -O - -nv

Transfer pound logs

# grep syslog for pound and transfer
$ cat /var/log/syslog|grep pound|curl --upload-file - https://transfer.sh/pound.log

Send us your awesome example

# Your awesome sample will be put here

Follow on GitHub



Share the love

Any questions?

contact us

http://jxm5d6emw5rknovg.onion/
Fork me on GitHub