将mountpoint用作参数,以JSON格式返回安装点上所有文件的列表以及它们的磁盘空间使用情况(以字节为单位)。我已经开发了python脚本,如何进一步使其与Ansible一起使用?
import os
导入json
def存在(路径):
“”“测试路径是否存在。对于断开的符号链接,返回False”“”“
尝试:
返回os.path.exists(path)
除了os.error:
返回False
def mount_file_path():
“”“测试用户是否输入了有效的文件路径,如果没有要求用户再次输入有效的路径,”“”
mount_path = input(“输入安装路径:”)
如果存在(mount_path):
return mount_path,os.listdir(mount_path)#将指定的路径存储在'files'变量中
其他:
print(“无效的文件路径。请输入有效路径”)
返回mount_file_path()
如果__name__ =='__main__':
mount_path,文件= mount_file_path()
filename_size = {}#创建一个空字典
#循环遍历指定路径中的所有文件并返回其文件大小
对于文件中的x:
full_path:str = mount_path +“ /” + x
如果os.path.isfile(full_path):
file_size = os.path.getsize(full_path)
filename_size [full_path] = file_size
#根据文件大小按降序排列所有文件名
sorted_filename_size = []
对于以k排序的(filename_size,key = filename_size.get,reverse = True):
sorted_filename_size.append((k,filename_size [k]))
打印(json.dumps(dict(sorted_filename_size),indent = 4,分隔符=(',',':')))
任何帮助将不胜感激。