- Easy and Fast File Sharing from the Command-line

Thursday, May 19, 2016

Easy and fast file sharing from the command-line. This code contains the server with everything you need to create your own instance. support currently the s3 (Amazon S3) provider and local file system (local).

$ curl --upload-file ./hello.txt

Encrypt & upload:
$ cat /tmp/hello.txt|gpg -ac -o-|curl -X PUT --upload-file "-"

Download & decrypt:
$ curl|gpg -o- > /tmp/hello.txt

Upload to virustotal:
$ curl -X PUT --upload-file nhgbhhj

Add alias to .bashrc or .zshrc:
transfer() {
    # write to output to tmpfile because of progress bar
    tmpfile=$( mktemp -t transferXXX )
    curl --progress-bar --upload-file $1$(basename $1) >> $tmpfile;
    cat $tmpfile;
    rm -f $tmpfile;

alias transfer=transfer
$ transfer test.txt

npm install
bower install

go get
go get
go get
go get
go get
go get
go get
go get
go get

grunt serve
grunt build

go run transfersh-server/*.go -provider=local --port 8080 --temp=/tmp/ --basedir=/tmp/ 

go build -o transfersh-server *.go

For easy deployment we've enabled Docker deployment.
docker build -t transfersh .
docker run --publish 8080:8080 --rm transfersh --provider local --basedir /tmp/

Remco Verhoef
Uvis Grinfelds

Subscribe via e-mail for updates!