diff --git a/bin/get_system_info.py b/bin/get_system_info.py index 66bdbdf..15866f1 100644 --- a/bin/get_system_info.py +++ b/bin/get_system_info.py @@ -2,7 +2,6 @@ import _load import psutil import smtplib -import os import argparse import yaml @@ -78,7 +77,7 @@ def get_disk_info(): # 磁盘总空间,单位G total_disk_size = disk_info.total//1024//1024//1024 # 当前磁盘使用率、剩余空间G和磁盘总空间信息 - info = " {0}盘使用率:{1}%, 剩余空间:{2}G, 总大小:{3}G".format(disk_name, str(disk_info.percent),free_disk_size,total_disk_size) + info = "\t{0}盘使用率:{1}%, 剩余空间:{2}G, 总大小:{3}G".format(disk_name, str(disk_info.percent),free_disk_size,total_disk_size) # print(info) # 拼接多个磁盘的信息 content.append(info) @@ -86,26 +85,23 @@ def get_disk_info(): save_txt(content) # 获取某个目录的大小 -dir_content=[] -def get_dir_size(path): +def get_dir_size(path): list1 = [] - fileList = os.listdir(path) # 获取path目录下所有文件 - for filename in fileList: - pathTmp = os.path.join(path,filename) # 获取path与filename组合后的路径 - if os.path.isdir(pathTmp): # 判断是否为目录 - print("---------------") - dir_content.append(" ---------------") - get_dir_size(pathTmp) # 是目录就继续递归查找 - elif os.path.isfile(pathTmp): # 判断是否为文件 - filesize = os.path.getsize(pathTmp) # 如果是文件,则获取相应文件的大小 - str_tex = ' {0}文件的大小为:{1}字节'.format(pathTmp,filesize) + for item in path.iterdir(): + if item.is_file(): + file_size = file_path.stat().st_size + list1.append(file_size) + str_tex=f"\t{item}的大小是{file_size}字节" print(str_tex) - dir_content.append(str_tex) - list1.append(filesize) # 将文件的大小添加到列表 - str_dir_tex = ' {0} 目录的大小为: {1:.4f} MB'.format(path, (sum(list1)/1024/1024)) - print(str_dir_tex) - dir_content.append(str_dir_tex) + save_txt([str_tex]) + elif item.is_dir(): + #print(f"目录: {item}") + save_txt(['\t--------------']) + get_dir_size(item) + str_dir_tex = '\t{0} 的大小为: {1:.4f} MB'.format(path, (sum(list1)/1024/1024)) + print(str_dir_tex) + save_txt([str_dir_tex]) # cpu信息 @@ -161,9 +157,10 @@ def main(): get_cpu_info() get_memory_info() path = "D:\\agent\\ubackup\\uagent\\logs" - get_dir_size(path) + directory_path = Path(path) save_txt(["{0}目录大小:".format(path)]) - save_txt(dir_content) + get_dir_size(directory_path) + save_txt(['----------------------END----------------------------'])