如何按修改日期使用 Paramiko 对从 SFTP 服务器提取的文件列表进行排序?

How to sort file list pulled from SFTP server using Paramiko by modification date?

我有这段代码可以使用 Paramiko 从服务器中提取文件。如何让这些文件按修改日期排序?

ssh = paramiko.SSHClient()
# automatically add keys without requiring human intervention
ssh.set_missing_host_key_policy( paramiko.AutoAddPolicy() )

ssh.connect(sftpURL, username=sftpUser, password=sftpPass)

sftp = ssh.open_sftp()
filesInSFTP = sftp.listdir(sftpPullDirectory)
# Get only the XML and XLSX files
filesInSFTP = [file for file in filesInSFTP if file.lower().endswith(('.xml', '.xlsx'))]

使用SFTPClient.listdir_attr. And then sort the list by SFTPAttributes.st_mtime field.

检索带有文件属性(包括修改时间)的列表
filesInSFTP = sftp.listdir_attr(sftpPullDirectory)
filesInSFTP.sort(key = lambda f: f.st_mtime)

相关问题:


强制性警告:请勿使用 AutoAddPolicy – 您正在失去针对 MITM attacks by doing so. For a correct solution, see Paramiko "Unknown Server".

的保护