Transfer.sh is a simple and fast command-line file sharing tool. This project provides a server-side application that you can use to create your own instance of file sharing. Transfer.sh supports multiple storage providers, including Amazon S3, Google Drive, Storj, and local file systems. ###Functional characteristics - ** File upload **: Easily upload files using the `curl` command. - ** Encrypted upload **: Use GPG to symmetrically encrypt files and upload them. - ** Download and decrypt **: Download files and decrypt them using GPG. - ** Virus scanning **: You can choose to use ClamAV for pre-scanning when uploading files. - ** Delete files **: Supports deleting files through the delete URL in the response header. - ** Customize the number of downloads and retention days **: You can set the maximum number of downloads and retention days for a file through the request header. - ** Server-side encryption **: Only applicable to self-hosted servers. Server-side AES256 encryption is achieved by setting the encryption password in the request header. ###Usage examples ####Upload files ```bash $ curl -v --upload-file ./ hello.txt https://transfer.sh/hello.txt ``` ####Encrypt and upload ```bash $ gpg --armor --symmetric --output - /tmp/hello.txt | curl --upload-file - https://transfer.sh/test.txt ``` ####Download and decrypt ```bash $ curl https://transfer.sh/1lDau/test.txt | gpg --decrypt --output /tmp/hello.txt ``` ####Delete files ```bash $ curl -X DELETE <X-Url-Delete Response Header URL> ```

