transfer.sh Open in urlscan Pro
2a01:4f8:200:1097::2  Public Scan

URL: https://transfer.sh/
Submission: On August 07 via manual from IN — Scanned from DE

Form analysis 0 forms found in the DOM

Text Content

TRANSFER.SH

 * home
 * sample use cases
 * contact us


EASY FILE SHARING FROM THE COMMAND LINE

# Upload using cURL $ curl --upload-file ./hello.txt
https://transfer.sh/hello.txt https://transfer.sh/7ACn8Iju8m/hello.txt # Using
the shell function $ transfer hello.txt
##################################################### 100.0%
https://transfer.sh/nNmNW1cLS2/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 10 GB


FILES STORED FOR 14 DAYS


FOR FREE


ENCRYPT YOUR FILES


MAXIMIZE AMOUNT OF DOWNLOADS


PREVIEW YOUR FILES IN THE BROWSER!


SAMPLE USE CASES


HOW TO UPLOAD


# Uploading is easy using curl $ curl --upload-file ./hello.txt
https://transfer.sh/hello.txt https://transfer.sh/7ACn8Iju8m/hello.txt $ curl -H
"Max-Downloads: 1" -H "Max-Days: 5" --upload-file ./hello.txt
https://transfer.sh/hello.txt https://transfer.sh/7ACn8Iju8m/hello.txt #
Download the file $ curl https://transfer.sh/7ACn8Iju8m/hello.txt -o hello.txt


ADD SHELL FUNCTION TO .BASHRC OR .ZSHRC


# Add this to .bashrc or .zshrc or its equivalent transfer(){ if [ $# -eq 0
];then echo "No arguments specified.\nUsage:\n transfer <file|directory>\n ... |
transfer <file_name>">&2;return 1;fi;if tty -s;then
file="$1";file_name=$(basename "$file");if [ ! -e "$file" ];then echo "$file: No
such file or directory">&2;return 1;fi;if [ -d "$file" ];then
file_name="$file_name.zip" ,;(cd "$file"&&zip -r -q - .)|curl --progress-bar
--upload-file "-" "https://transfer.sh/$file_name"|tee /dev/null,;else cat
"$file"|curl --progress-bar --upload-file "-"
"https://transfer.sh/$file_name"|tee /dev/null;fi;else file_name=$1;curl
--progress-bar --upload-file "-" "https://transfer.sh/$file_name"|tee
/dev/null;fi;} # Now you can use transfer function $ 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/(7ACn8Iju8m/hello.txt,nNmNW1cLS2/world.txt).tar.gz $ curl
https://transfer.sh/(7ACn8Iju8m/hello.txt,nNmNW1cLS2/world.txt).zip


ENCRYPT YOUR FILES WITH GPG 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 # Download and decrypt $ curl
https://transfer.sh/7ACn8Iju8m/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 SHELL FUNCTION)


# Transfer and send email with link (uses shell function) $ 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/7ACn8Iju8m/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


UPLOAD A FILE USING POWERSHELL


# Upload using Powershell PS H:\> invoke-webrequest -method put -infile
.\file.txt https://transfer.sh/file.txt


UPLOAD A FILE USING HTTPIE


# HTTPie $ http https://transfer.sh/ -vv < /tmp/test.log


UPLOAD A FILE USING UNOFFICIALLY CLIENT IN PYTHON


# transfersh-cli (https://github.com/tanrax/transfersh-cli) $ transfersh
photos.zip # Uploading file # Download from here:
https://transfer.sh/7ACn8Iju8m/photos.zip # It has also been copied to the
clipboard!


ENCRYPT YOUR FILES WITH OPENSSL BEFORE THE TRANSFER


# Encrypt files with password using openssl $ cat /tmp/hello.txt|openssl
aes-256-cbc -pbkdf2 -e|curl -X PUT --upload-file "-"
https://transfer.sh/test.txt # Download and decrypt $ curl
https://transfer.sh/7ACn8Iju8m/test.txt|openssl aes-256-cbc -pbkdf2 -d >
/tmp/hello.txt


UPLOAD A FILE OR DIRECTORY IN WINDOWS


#Save this as transfer.cmd in Windows 10 (which has curl.exe) @echo off setlocal
EnableDelayedExpansion EnableExtensions goto main :usage echo No arguments
specified. >&2 echo Usage: >&2 echo transfer ^<file^|directory^> >&2 echo ... ^|
transfer ^<file_name^> >&2 exit /b 1 :main if "%~1" == "" goto usage timeout.exe
/t 0 >nul 2>nul || goto not_tty set "file=%~1" for %%A in ("%file%") do set
"file_name=%%~nxA" if exist "%file_name%" goto file_exists echo %file%: No such
file or directory >&2 exit /b 1 :file_exists if not exist "%file%\" goto
not_a_directory set "file_name=%file_name%.zip" pushd "%file%" || exit /b 1 set
"full_name=%temp%\%file_name%" powershell.exe -Command "Get-ChildItem -Path .
-Recurse | Compress-Archive -DestinationPath ""%full_name%""" curl.exe
--progress-bar --upload-file "%full_name%" "https://transfer.sh/%file_name%"
popd goto :eof :not_a_directory curl.exe --progress-bar --upload-file "%file%"
"https://transfer.sh/%file_name%" goto :eof :not_tty set "file_name=%~1"
curl.exe --progress-bar --upload-file - "https://transfer.sh/%file_name%" goto
:eof


SEND US YOUR AWESOME EXAMPLE


# Your awesome sample will be put here


FOLLOW ON GITHUB



> @dutchcoders Thanks for transfer.sh. Just used it for a production purpose for
> a customer. So great, so easy, so https. :)
> 
> — Dave Sims (@FloifyDave)

> @dutchcoders love transfer.sh! any change we can *pay* for a self-hosted
> version?
> 
> — Kareem Kouddous (@kareemk)

> http://t.co/JomAmqWYEB by @dutchcoders is pure awesomeness! any chance of
> source on github? :-)
> 
> — PJ Spagnolatti (@drakpz)

> Love transfer.sh! Will be using it from now on! Thanks for the amazing service
> we can use from the CLI @dutchcoders
> 
> — Jacob Lindgren (@jacoblindgren11)

> transfer.sh is my latest fav service! Try simple command-line and web file
> sharing! https://t.co/FSrsb1JKJd Thanks @dutchcoders !
> 
> — Lars Arvestad (@arvestad)


SHARE THE LOVE

 * 
 * 
   
 * 


ANY QUESTIONS?

contact us

Made with by Dutch Coders