A command line SCP client


License
MIT
Install
pip install igloo==0.0.24

Documentation

Igloo

A simple command line SCP client.

Feature highlights

  • Store commonly used remote paths for quick access
  • Use regular expressions to filter files
  • Upload from standard input directly

Installation

pip install igloo

For igloo to work, you must have activated key authentication (i.e. you must be able to ssh into the remote machine without entering a password or passphrase).

Examples

The exhaustive list of options can be viewed with igloo --help.

Here are a few common usage patterns (note that each --option has a shorter version which can found in the help message):

  • Setup the default remote URL:

    $ igloo --config add user@host:path/to/remote/directory
  • Copy two files to this remote URL:

    $ igloo first.ext second.log
    first.ext
    second.log
  • Download the first file back:

    $ igloo --remote first.ext
    first.ext
  • View the list of files in the remote directory that end in .log:

    $ igloo --remote --list --expr='\.log$'
    second.log
  • Add a new remote URL corresponding to profile public:

    $ igloo --config add user@host:another/directory/public public
  • Transfer all the files in the current directory to the remote public URL, overwriting any preexisting files:

    $ igloo --profile=public --force *
    first.ext
    second.log
  • Download all files from the remote directory that don't end in .log, and delete them from the remote directory afterwards:

    $ igloo --remote --move --no-match --expr='\.log$'
    first.ext
  • View list of profiles:

    $ igloo --config list
    default [user@host:path/to/remote/directory]
    public [user@host:another/directory/public]
  • Read from standard input and save remotely as hello.log

    $ echo 'Hello world!' | igloo --stream hello.log
    hello.log

Future work

  • Multiple transfers concurrently (--threads=THREADS)
  • Interactive progress bars (change --quiet behavior)
  • Zip files and folders on the fly (--zip)
  • Tool to setup authentication