我有一台托管数据文件的FTP服务器,其中与数据关联的日期被编码为文件名。我想编写一个过程,该过程可以查找和下载与特定日期关联的所有文件。复杂之处在于,不同的文件使用不同的编码。(不幸的是,更改/标准化名称不是一种选择。)年份可以是四位数或两位数。该月份可以是两位数或三个字母。有时表示日期,并且子字符串可以在字符串中的任何位置。
目前,我正在创建服务器上所有文件的列表,然后使用正则表达式确定哪些文件相关,然后下载这些文件。
是否可以浓缩前两个步骤?也就是说,有没有办法让服务器返回与表达式匹配的文件列表?
如果有任何区别,我正在使用Python ftplib。
简短的回答是没有,这是不可能的(使用FTP)。
RFC 5797第3节定义了FTP客户端可用的命令。可用的命令远程服务器上列表中的文件LIST
,MLSD
并NSLT
,并为所有这些唯一可用的参数是目录的名称-有没有办法来过滤文件,通过正则表达式或其他方式。
但是,除非您要处理数百万个文件,否则获取清单并在客户端中解析它们并不会有很大的开销。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句