统计文件目录下的文件个数(不包括目录的所有文件类型个数)
# Author:mologa
import smtplib
def 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 os
trigger = 23 #阀值,当文件个数达到这个值就发送邮件提醒
# path = os.getcwd() #获取当前路径
path = input("file-path:")
count = 0
for i in os.walk(path): #遍历统计
files=len(i[-1])
count += files
message='''
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] = 1
name = count.keys()
for i in name:
print(i, '在当前目录中出现的次数为: ', count[i])
*测试结果就不上传了涉及个人隐私