Skip to main content

File sync utility

Project description

Synecure

Synecure provides a command line program called sy that allows easy synchronization of files and directories over SSH between different machines. It is mostly a wrapper around bsync, which is itself based on the standard UNIX tool rsync.

This is beta software and comes with NO GUARANTEES that it will keep your data safe. It should not be used as backup solution.

Install

pip install synecure

Usage

# Sync local ~/directory with remote $HOME/directory on me@awesome.person
sy ~/directory -r me@awesome.person

# Sync current directory with the same path on me@awesome.person, port 2222
sy -r me@awesome.person -p 2222

# Register a remote under a short name
sy-config add me me@awesome.person -p 2222

# Synchronize to a named remote
sy -r me

# Synchronize the current directory to the last used remote (for that directory)
sy

By default, sy can take on any path within your $HOME and will set the corresponding path on the remote's $HOME. It is possible to change this behavior or synchronize paths outside of $HOME using the sy-config path command.

sy with no argument will sync the current directory using the last remote for that directory (you will need to use the -r flag the first time, but not subsequently).

Howto

Ignore files

Add a .bsync-ignore file in the root directory to sync with a filename or glob pattern on each line, and they will be ignored. It works more or less like .gitignore.

Putting .bsync-ignore files in subdirectories to ignore files in these subdirectories will unfortunately not work, so sy ~/x and sy ~/x/y may synchronize the contents of ~/x/y differently if both directories contain different .bsync-ignore files, or if one has an ignore file and the other does not.

Customize synchronization paths

To synchronize local /etc to remote /etcetera, for named remote desktop:

sy-config path add desktop /etc /etcetera

Obviously, this will only work if the remote user has the permissions to write to /etcetera. You can have multiple remotes for the same host with different users, if that helps.

To synchronize local ~/hello to remote ~/bonjour:

sy-config path add desktop ~/hello bonjour

Don't use ~ for the remote path, it will complete to the wrong thing.

To list available paths:

sy-config list

Sync local directories

sy-config add dropbox ~/Dropbox

Dry run

Use the -n flag to perform a "dry run": sy (well, bsync) will report all the transfers that would occur but it will not perform them.

Use --show-plan to get the sequence of commands that sy will run.

Project details


Download files

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

Source Distribution

synecure-0.1.10.tar.gz (19.5 kB view details)

Uploaded Source

Built Distribution

synecure-0.1.10-py3-none-any.whl (19.2 kB view details)

Uploaded Python 3

File details

Details for the file synecure-0.1.10.tar.gz.

File metadata

  • Download URL: synecure-0.1.10.tar.gz
  • Upload date:
  • Size: 19.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.4 CPython/3.9.0 Darwin/20.1.0

File hashes

Hashes for synecure-0.1.10.tar.gz
Algorithm Hash digest
SHA256 e281c3fad2cc5b9deae7d0c63d90d8ae5fe151e2cf304f28e4713a305bcaf4b6
MD5 fe913f2fdfb3e436c87c9629f1668ae0
BLAKE2b-256 4f7a349a5152d20d85c943a4ed716f4e1c2c7e6cecdaa076294cd276350e1332

See more details on using hashes here.

File details

Details for the file synecure-0.1.10-py3-none-any.whl.

File metadata

  • Download URL: synecure-0.1.10-py3-none-any.whl
  • Upload date:
  • Size: 19.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.4 CPython/3.9.0 Darwin/20.1.0

File hashes

Hashes for synecure-0.1.10-py3-none-any.whl
Algorithm Hash digest
SHA256 7e370f98ae06350f790108217413943a2c8a9a521d2607d5478cf6ce0095a67e
MD5 64e3b6bb7d98a672ad873931f0d19556
BLAKE2b-256 0ee99b8c7e604e8eec6567ddf09fa61c12d748f8c3176ecb1691bcf2cfb7e613

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page