跳转到主要内容

通过SFTP将文件上传/下载到maildir结构

项目描述

sftpcopy 允许将文件复制到远程服务器或从远程服务器复制,与 gocept.filestore 集成。sftpcopy 将从 new 目录获取文件,将它们复制到远程服务器,并在成功后放入 cur。同样,它将下载远程服务器上的文件,并将它们放入 new 目录,供其他应用程序拾取。

用法

您可以在命令行中提供配置文件的名称,或者直接将配置值作为字典传递给入口点(对于buildout集成很有用)。配置文件具有以下格式

[general]
mode = upload # or download
logfile = /path/to/logfile # defaults to stdout if not given
buffer_size = 65536
skip_files =
    name_of_file_to_skip_1
    name_of_file_to_skip_2

[local]
path = /path/on/local/machine

[remote]
path = /path/on/remote/machine
hostname = remote.host
port = 22
username = user
password = secret

配置字典使用以下键代替

  • 日志文件

  • 缓冲区大小(默认:65536,即64 KiB)

  • keepalive_interval(默认:5秒)

  • 本地路径

  • 远程路径

  • 主机名

  • 端口

  • 用户名

  • 密码

  • 密钥文件名

  • 跳过文件

密钥文件名优先于密码。如果密钥文件名以dsa结尾,则假定它是DSA密钥,否则是RSA密钥。注意,密钥文件不得受密码保护。

skip_files是一个包含文件名(本地或远程)的列表,在上传或下载过程中会跳过这些文件。

文件以buffer_size大小的块进行复制,以避免一次性将大文件加载到内存中。

您也可以像这样将sftpcopy用作Python对象

import gocept.sftpcopy
sftp = gocept.sftpcopy.SFTPCopy(
    '/path/on/local/machine',
    'remote.host', 22, 'user', 'secret', '/path/on/remote/machine',
    skip_files=['my_file_to_ignore'])
sftp.connect()
sftp.uploadNewFiles()  # or sftp.downloadNewFiles()

变更日志

2.0 (2020-06-18)

向后不兼容的更改

  • 移除AMQP集成。如果您需要AMQP集成,请坚持使用版本 < 1.0。

其他更改

  • 添加对Python 3.7和3.8的支持。

  • 迁移到GitHub。

信息

  • 版本1.0为内部发布版本,所以在此省略。

0.6.0 (2016-11-02)

  • 为测试固定依赖项的版本号。

  • 迁移到py.test作为测试运行器。

  • 添加新的skip_files参数以跳过文件的上传或下载。

0.5.1 (2015-04-15)

  • bootstrap.py更新到zc.buildout 2.3.0版本。

  • 将仓库迁移到bitbucket.org

0.5.0 (2014-11-26)

  • 设置keep-alive检查。

0.4.1 (2014-03-07)

  • 修复了brown-bag发布。

0.4.0 (2014-03-07)

  • 以块的形式复制文件而不是将每个完整的文件加载到内存中。有一个新的配置选项buffer_size,默认为64 kB。

0.3.0 (2014-02-20)

  • 支持基于密钥的认证。

  • 检查上传/下载后传输的文件大小是否与传输的内容匹配。

0.2.2 (2012-04-04)

  • 更新到gocept.amqprun-0.8。

0.2.1 (2012-03-29)

  • 使amqp服务器可配置以进行测试。

  • 清理测试留下的垃圾连接(#10634)。

0.2 (2012-02-22)

  • 添加对gocept.amqprun的集成。

0.1.4 (2009-11-16)

  • 记录连接时发生的错误

0.1.3 (2008-02-27)

  • configdict参数添加到主函数中,以方便与buildout集成。

0.1.2 (2008-02-18)

  • 修复了连接日志中的错误。

  • 记住文件存储,以便我们可以实际上传/下载。

  • 对预定义用户进行了测试。

0.1.1 (2007-11-13)

  • 修复了0.1版本的brown back发布,该版本由于存档中缺少各种文件而无法使用。

项目详情


下载文件

下载您平台上的文件。如果您不确定选择哪个,请了解更多关于安装软件包的信息。

源代码分发

gocept.sftpcopy-2.0.tar.gz (10.5 kB 查看哈希值

上传时间 源代码

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面