Skip to main content
Join the official 2020 Python Developers SurveyStart the survey!

Tool for uploading folders and files via sftp.

Project description

A small command line tool for uploading and downloading files and folders to and from a sftp server. Uses asyncssh and is pip installable for easy use in automated tasks.

https://img.shields.io/travis-ci/steinwurf/shuft/master.svg?style=flat-square&logo=travis
  • Upload a file or folder to a sftp server.
  • Requires Python 3.5 or newer.

Getting started

In your virtual python environment of choice, install the shuft pip package.

python pip install shuft

Basic usage.

python shuft --command upload --host files.mydomain.com --localpath my_folder --remotepath /uploads/

Run with ‘’–help’ for addtional options.

shuft --help

usage: __main__.py [-h] --command {upload} --host HOST [--localpath LOCALPATH]
                   [--remotepath REMOTEPATH] [--port PORT]
                   [--known_hosts KNOWN_HOSTS] [--username USERNAME]
                   [--password PASSWORD] [--client_keys CLIENT_KEYS]
                   [--compress]

Upload directories or files

optional arguments:
  -h, --help            show this help message and exit
  --command {upload}    the task to perform.
  --host HOST           the remote host to connect to.
  --localpath LOCALPATH
                        path to the local folder or file.
  --remotepath REMOTEPATH
                        path to the remote folder or file.
  --port PORT           port number on the remote (defaults to 22).
  --known_hosts KNOWN_HOSTS
                        list of known hosts, if set to None accepts any.
  --username USERNAME   username for logging in on the remote, defaults to the
                        current user
  --password PASSWORD   password for logging in on the remote
  --client_keys CLIENT_KEYS
                        list of client private key(s)
  --compress            whether to compress target folder or file before
                        transmission. Requires that the host accepts ssh
                        connections and has tar available

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for shuft, version 1.1.1
Filename, size File type Python version Upload date Hashes
Filename, size shuft-1.1.1-py2.py3-none-any.whl (5.3 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size shuft-1.1.1.tar.gz (122.8 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page