Python查找存储区0KB文件并记录下地址

查找存储区域中0KB大小文件,可以根据需要变更指定大小。

#-*- coding: utf-8 -*- 
#!/usr/bin/python 

from os.path import isdir,abspath,getsize,join
from os import listdir,system,stat
from importlib.resources import path
from fileinput import filename
import logging
import os

filenames = []


#获取地址簿
def append_filename(path):
    contents = listdir(path)
    for content in contents:
        print('正在获取地址表单')
        content = join(path,content)
        if isdir(content):
            append_filename(abspath(content))
        else:
            filenames.append(abspath(content))
    return filenames
 
 # '''获取文件的大小,结果保留两位小数,单位为KB'''   
def get_FileSize(filename):
    fsize = os.path.getsize(filename)
    fsize = fsize/float(1024)
    return round(fsize,2)

#主程序,先获取地址簿,再校验地址簿中文件大小,最后将符合0KB大小文件记录到race_info_log.xlsx
def main():
    path =input("[*] please input the directory path:")
    append_filename(path)
    print(filenames)
    for filename in filenames:
        log_file = open("trace_info_log.xlsx", "a+")   
        #getsize(filename)
        
        #文件地址太长导致校验出错,添加 \\\\?\\ 解决。
        path4 = '\\\\?\\'
        
        filename = path4 + filename
        print("正在扫描%s"%filename) 
        Storage_size = get_FileSize(filename)
        print(Storage_size)
        
        
        
        if Storage_size == 0:
           log_file.writelines(filename+'\n')
           print("[-] finding %s"%filename)
         
        log_file.close()
     
    print('扫描结束,OKB文件信息已记录至race_info_log.xlsx')  
         
if __name__ == '__main__':
    main()

  

posted @ 2022-01-24 16:37  No九五二七9527  阅读(163)  评论(0)    收藏  举报