paramiko - 如何自动刷新 SFTP 服务器上文件的修改日期?

paramiko - How can I refresh the modified date of a file on the SFTP server automatically?

我在 SFTP 服务器上有一个文件,在某些情况下应该使用 paramiko 包导入。在不满足这些条件之前,这个文件应该保留在服务器上而不被导入,但是它的修改日期应该被更新,这样这个日期应该总是大于我的导入程序检查文件的时间。

我阅读了软件包的 documentation,但没有找到任何可以执行此操作的函数。

这可以通过将文件从 SFTP 复制到本地主机、从 SFTP 中删除文件并将其再次复制到 SFTP 来完成。

所以,

  1. get(remotepath, localpath, callback=None)
  2. remove(path)
  3. put(localpath, remotepath, callback=None, confirm=True)

如果有人有其他想法,请分享您的知识!

我会尝试以追加模式打开文件 ("a") 并立即关闭它。

utime method:

 utime(path, times)

Set the access and modified times of the file specified by path. If times is None, then the file’s access and modified times are set to the current time. Otherwise, times must be a 2-tuple of numbers, of the form (atime, mtime), which is used to set the access and modified times, respectively.