监控远程FTP目录

7
我只能访问远程服务器上的一个目录,使用FTP协议。我希望在新文件出现在该目录时立即获取其内容。
是否有类似Python下的FAM工具来监控FTP上的新文件?
1个回答

11
如果轮询服务器是一个选项:
from ftplib import FTP
from time import sleep

ftp = FTP('localhost')
ftp.login()

def changemon(dir='./'):
    ls_prev = set()

    while True:
        ls = set(ftp.nlst(dir))

        add, rem = ls-ls_prev, ls_prev-ls
        if add or rem: yield add, rem

        ls_prev = ls
        sleep(5)

for add, rem in changemon():
    print('\n'.join('+ %s' % i for i in add))
    print('\n'.join('- %s' % i for i in remove))

ftp.quit()

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接