统计文件目录下的文件个数(不包括目录的所有文件类型个数)
# Author:mologaimport smtplibdef send_monitor(arg): from email.mime.text import MIMEText _user = "668688@qq.com" #qq发件箱,也可以是其他邮箱,据说163比较好使 _pwd = "hzyjpsssssjxdjjd" #qq邮箱开通认证后会有一段随机码 _to = "mologa@zakj.com.cn" #收件箱 msg = MIMEText(arg) msg["Subject"] = "FTP_monitor" msg["From"] = _user msg["To"] = _to try: s = smtplib.SMTP_SSL("smtp.qq.com", 465) s.login(_user, _pwd) s.sendmail(_user, _to, msg.as_string()) s.quit() print("Success!") except smtplib.SMTPException as e: print("Falied,%s"%e)import ostrigger = 23 #阀值,当文件个数达到这个值就发送邮件提醒# path = os.getcwd() #获取当前路径path = input("file-path:")count = 0for i in os.walk(path): #遍历统计 files=len(i[-1]) count += filesmessage=''' FTP服务器: 同步传输文件目录%s下文件个数为%d; 请检查!!!'''%(path,count)if count>=trigger: send_monitor(message)else: print("nothing to do.") print(count) pass# print(count) #输出结果
- 网上看到一个统计目录下不同文件类型的文件个数
import os # os操作系统path = input("请输入您要统计的文件夹的绝对路径(当前目录下情输入#): ")if path == '#': path = '.'files = os.listdir(path) # 获得当前 硬盘目录中的所有文件print(files)count = dict() # 存放每种文件数目的字典for i in files: # 逐个文件遍历 if (os.path.isdir(i)): # 判断当前是一个文件夹''' name = '文件夹' if name in count: count[name] += 1 else: count[name] = 1 else: name = os.path.splitext(i)[1] # 当前不是文件夹 获得当前的文件的扩展名 if name in count: count[name] += 1 else: count[name] = 1name = count.keys()for i in name: print(i, '在当前目录中出现的次数为: ', count[i])
*测试结果就不上传了涉及个人隐私