我有这样的代码,它使用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
检索具有文件属性(包括修改时间(的列表。然后按SFTPAttributes.st_mtime
字段对列表进行排序。
filesInSFTP = sftp.listdir_attr(sftpPullDirectory)
filesInSFTP.sort(key = lambda f: f.st_mtime)
相关问题:
- 如何获取包含Linux中感兴趣的特定文件的最新文件夹,并使用Python中的Paramiko下载该文件
- Paramiko获取排序目录列表
强制性警告:不要使用AutoAddPolicy
–这样做会失去对MITM攻击的保护。有关正确的解决方案,请参阅Paramiko"未知服务器">。