zoukankan      html  css  js  c++  java
  • python 监控FTP目录下的文件个数

    统计文件目录下的文件个数(不包括目录的所有文件类型个数)

    # 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])
    

    *测试结果就不上传了涉及个人隐私

  • 相关阅读:
    Linux 设备驱动 Edition 3(中文版)
    内核和用户空间共享内存的实现例程proc和mmap
    mmap的详细使用(用户空间)
    使用 I/O 内存from LDD3
    关于strcpy、memset、memcpy的使用详解
    get_free_page 和其友
    Linux调试技术介绍
    关于信息时代的学习
    [恢]hdu 1196
    [恢]hdu 1157
  • 原文地址:https://www.cnblogs.com/mologa-jie/p/7503625.html
Copyright © 2011-2022 走看看