# ![logo](https://raw.githubusercontent.com/mar10/pyftpsync/master/docs/logo_48x48.png) pyftpsync
[![Tests](https://github.com/mar10/pyftpsync/actions/workflows/python-app.yml/badge.svg)](https://github.com/mar10/pyftpsync/actions/workflows/python-app.yml)
[![Latest Version](https://img.shields.io/pypi/v/pyftpsync.svg)](https://pypi.python.org/pypi/pyftpsync/)
[![License](https://img.shields.io/pypi/l/pyftpsync.svg)](https://github.com/mar10/pyftpsync/blob/master/LICENSE.txt)
[![Documentation Status](https://readthedocs.org/projects/pyftpsync/badge/?version=latest)](https://pyftpsync.readthedocs.io/)
[![codecov](https://codecov.io/github/mar10/pyftpsync/graph/badge.svg?token=0JM9CN8RYW)](https://codecov.io/github/mar10/pyftpsync)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/ambv/black)
[![Released with: Yabs](https://img.shields.io/badge/released%20with-yabs-yellowgreen)](https://github.com/mar10/yabs)
[![StackOverflow: pyftpsync](https://img.shields.io/badge/StackOverflow-pyftpsync-blue.svg)](https://stackoverflow.com/questions/tagged/pyftpsync)
> Synchronize directories using FTP(S), SFTP, or file system access.
[ ![sample](teaser.png?raw=true) ](https://github.com/mar10/pyftpsync "Live demo")
## Summary
Synchronize directories using FTP(S), SFTP, or file system access.
- This is a command line tool...
- ... and a library for use in your Python projects.
- Upload, download, and bi-directional synch mode.
- Allows FTP-to-FTP and Filesystem-to-Filesystem synchronization as well.
- Architecture is open to add other target types.
**Note:** Version 4.0 drops support for Python 2.
## Quickstart
[Python](https://www.python.org/download/Python) 3.8+ is required,
[pip](http://www.pip-installer.org/) recommended:
```bash
$ pip install pyftpsync --upgrade
$ pyftpsync --help
```
**Note:** <br>
MS Windows users that only need the command line interface may prefer the
[MSI Installer](https://github.com/mar10/pyftpsync/releases/latest) or install
using the Windows Package Manager:
```ps1
> winget install pyftpsync
```
See [Command Line Interface](https://pyftpsync.readthedocs.io/en/latest/ug_cli.html)
for details.
In addition to the direct invocation of `upload`, `download`, or `sync`
commands, version 3.x allows to define a `pyftpsync_yaml` file
in your project's root folder which then can be executed like so::
$ pyftpsync run
See [Run from pyftpsync.yaml](https://pyftpsync.readthedocs.io/en/latest/ug_run.html)
for details.
## Documentation
[Read the Docs](https://pyftpsync.readthedocs.io/) for details.
Raw data
{
"_id": null,
"home_page": "https://github.com/mar10/pyftpsync",
"name": "pyftpsync",
"maintainer": "Martin Wendt",
"docs_url": null,
"requires_python": null,
"maintainer_email": "pyftpsync@wwwendt.de",
"keywords": "python, ftp, ftps, sftp, synchronize, tls, tool",
"author": "Martin Wendt",
"author_email": "pyftpsync@wwwendt.de",
"download_url": "https://files.pythonhosted.org/packages/75/f1/6c6c27dd4d556214e6ea524821c3fcd68068de44d6b42880e99c1666ce37/pyftpsync-4.1.0.tar.gz",
"platform": null,
"description": "# ![logo](https://raw.githubusercontent.com/mar10/pyftpsync/master/docs/logo_48x48.png) pyftpsync\r\n\r\n[![Tests](https://github.com/mar10/pyftpsync/actions/workflows/python-app.yml/badge.svg)](https://github.com/mar10/pyftpsync/actions/workflows/python-app.yml)\r\n[![Latest Version](https://img.shields.io/pypi/v/pyftpsync.svg)](https://pypi.python.org/pypi/pyftpsync/)\r\n[![License](https://img.shields.io/pypi/l/pyftpsync.svg)](https://github.com/mar10/pyftpsync/blob/master/LICENSE.txt)\r\n[![Documentation Status](https://readthedocs.org/projects/pyftpsync/badge/?version=latest)](https://pyftpsync.readthedocs.io/)\r\n[![codecov](https://codecov.io/github/mar10/pyftpsync/graph/badge.svg?token=0JM9CN8RYW)](https://codecov.io/github/mar10/pyftpsync)\r\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/ambv/black)\r\n[![Released with: Yabs](https://img.shields.io/badge/released%20with-yabs-yellowgreen)](https://github.com/mar10/yabs)\r\n[![StackOverflow: pyftpsync](https://img.shields.io/badge/StackOverflow-pyftpsync-blue.svg)](https://stackoverflow.com/questions/tagged/pyftpsync)\r\n\r\n> Synchronize directories using FTP(S), SFTP, or file system access.\r\n\r\n[ ![sample](teaser.png?raw=true) ](https://github.com/mar10/pyftpsync \"Live demo\")\r\n\r\n## Summary\r\n\r\nSynchronize directories using FTP(S), SFTP, or file system access.\r\n\r\n- This is a command line tool...\r\n- ... and a library for use in your Python projects.\r\n- Upload, download, and bi-directional synch mode.\r\n- Allows FTP-to-FTP and Filesystem-to-Filesystem synchronization as well.\r\n- Architecture is open to add other target types.\r\n\r\n**Note:** Version 4.0 drops support for Python 2.\r\n\r\n## Quickstart\r\n\r\n[Python](https://www.python.org/download/Python) 3.8+ is required,\r\n[pip](http://www.pip-installer.org/) recommended:\r\n\r\n```bash\r\n$ pip install pyftpsync --upgrade\r\n$ pyftpsync --help\r\n```\r\n\r\n**Note:** <br>\r\nMS Windows users that only need the command line interface may prefer the\r\n[MSI Installer](https://github.com/mar10/pyftpsync/releases/latest) or install\r\nusing the Windows Package Manager:\r\n\r\n```ps1\r\n> winget install pyftpsync\r\n```\r\n\r\nSee [Command Line Interface](https://pyftpsync.readthedocs.io/en/latest/ug_cli.html)\r\nfor details.\r\n\r\nIn addition to the direct invocation of `upload`, `download`, or `sync`\r\ncommands, version 3.x allows to define a `pyftpsync_yaml` file\r\nin your project's root folder which then can be executed like so::\r\n\r\n $ pyftpsync run\r\n\r\nSee [Run from pyftpsync.yaml](https://pyftpsync.readthedocs.io/en/latest/ug_run.html)\r\nfor details.\r\n\r\n## Documentation\r\n\r\n[Read the Docs](https://pyftpsync.readthedocs.io/) for details.\r\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Synchronize directories using FTP(S), SFTP, or file system access",
"version": "4.1.0",
"project_urls": {
"Bug Tracker": "https://github.com/mar10/pyftpsync/issues",
"Documentation": "https://pyftpsync.readthedocs.io",
"Download": "https://github.com/mar10/pyftpsync/releases/latest",
"Homepage": "https://github.com/mar10/pyftpsync",
"Source Code": "https://github.com/mar10/pyftpsync"
},
"split_keywords": [
"python",
" ftp",
" ftps",
" sftp",
" synchronize",
" tls",
" tool"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "2dd3dad634fbb3b2737594f6854fcf55ab733b1eaf5b1afc44137279eac7b9a0",
"md5": "d18d93807edd37d34a8a2d22a8eece6c",
"sha256": "1a0d15e22c99018e7eea8a9d83d28e1970e580a2d39722eed38a40a626e4ecad"
},
"downloads": -1,
"filename": "pyftpsync-4.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "d18d93807edd37d34a8a2d22a8eece6c",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 58357,
"upload_time": "2024-04-28T10:30:05",
"upload_time_iso_8601": "2024-04-28T10:30:05.754595Z",
"url": "https://files.pythonhosted.org/packages/2d/d3/dad634fbb3b2737594f6854fcf55ab733b1eaf5b1afc44137279eac7b9a0/pyftpsync-4.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "75f16c6c27dd4d556214e6ea524821c3fcd68068de44d6b42880e99c1666ce37",
"md5": "96720d7ad09e4e589cdec7d1c6ebe4b6",
"sha256": "f6c739e1f1afd479d141f55e904b709f04af74705594355af19ad78f93854743"
},
"downloads": -1,
"filename": "pyftpsync-4.1.0.tar.gz",
"has_sig": false,
"md5_digest": "96720d7ad09e4e589cdec7d1c6ebe4b6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 65137,
"upload_time": "2024-04-28T10:30:02",
"upload_time_iso_8601": "2024-04-28T10:30:02.675087Z",
"url": "https://files.pythonhosted.org/packages/75/f1/6c6c27dd4d556214e6ea524821c3fcd68068de44d6b42880e99c1666ce37/pyftpsync-4.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-04-28 10:30:02",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "mar10",
"github_project": "pyftpsync",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "colorama",
"specs": [
[
"==",
"0.4.6"
]
]
},
{
"name": "keyring",
"specs": [
[
"==",
"25.2.0"
]
]
},
{
"name": "pysftp",
"specs": [
[
"==",
"0.2.9"
]
]
},
{
"name": "PyYAML",
"specs": [
[
"==",
"6.0.1"
]
]
}
],
"tox": true,
"lcname": "pyftpsync"
}