搭建品牌电商网站怎么做,网站制作建设需求,网站上的logo怎么做,crm系统python 实现统计ftp服务器指定目录下文件夹数目、文件数目及所有文件大小 本次主要为满足应用方核对上传到ftp服务器的文件是否缺漏。 主要要求#xff1a;指定目录下#xff0c;文件夹数目/文件数目/所有文件大小#xff0c;类似Windows如下功能#xff1a; 模块介绍… python 实现统计ftp服务器指定目录下文件夹数目、文件数目及所有文件大小 本次主要为满足应用方核对上传到ftp服务器的文件是否缺漏。 主要要求指定目录下文件夹数目/文件数目/所有文件大小类似Windows如下功能 模块介绍 1 from ftplib import FTP2 ftp FTP() #设置变量3 ftp.set_debuglevel(2) #打开调试级别2 显示详细信息4 ftp.connect(IP, port) #连接ftp, IP和端口5 ftp.log(user, password) #连接的用户名、密码6 7 ftp.cwd(pathname) #设置FTP当前操作的路径8 ftp.dir() #显示目录下的文件信息9 ftp.nlst() #获取目录下的文件
10 ftp.mkd(pathname) #新建远程目录
11 ftp.pwd() #返回当前所在位置
12 ftp.rmd(dirname) #删除远程目录
13 ftp.delete(filename) #删除远程文件
14 ftp.rename(from_name, to_name) #修改文件名
15 ftp.storbinaly(STOR filename.txt, file_handel, bufsize) # 上传目标文件
16 ftp.retrbinaly(RETR filename.txt, file_handel, bufsize) # 上传FTP文件 功能实现 ftp.dir() 能显示目录下的文件信息考虑到要分别对文件夹个数和文件数目进行统计文件夹下存在文件夹和文件嵌套将dir()后的目录信息放入列表对列表进行操作进入子文件夹后进行递归调用操作。 1 # -*- coding: utf-8 -*-2 3 from ftplib import FTP4 5 ftp FTP()6 ftp.connect(132.121.xx.xxx, xx909)7 ftp.login(crmyun_xxx, wyjjjjxJ)8 sum1 09 sum2 0
10 value 0
11
12 def search_file(start_dir):
13 ftp.cwd(start_dir)
14 print ftp.pwd()
15 dir_res []
16 ftp.dir(., dir_res.append) #对当前目录进行dir()将结果放入列表
17 for i in dir_res:
18 if i.startswith(d):
19 global sum1
20 sum1 1
21 search_file(ftp.pwd()/i.split( )[-1])
22 ftp.cwd(..)
23 else:
24 global sum2, value
25 sum2 1
26 val i.split( )[-1]
27 value ftp.size(val)
28 if ftp.pwd().endswith(/):
29 # print ftp.pwd()val str(ftp.size(val)) B #打印出每个文件路径和大小
30 pass
31 else:
32 # print ftp.pwd()/val str(ftp.size(val)) B
33 pass
34 def sum_file(file_path):
35 search_file(file_path)
36 print folder number is str(sum1), file number is str(sum2), Totle size is str(value) B
37
38
39 if __name__ __main__:
40 sum_file(/apps/crmyun/crmyun_755) 展示结果