大家好,我是一名_全栈_测试开发工程师,已经开源一套【自动化测试框架】和【测试管理平台】,欢迎大家关注我,和我一起【分享测试知识,交流测试技术,趣聊行业热点】。
一、函数说明:
- 获取系统名称:sys.platform.lower()
- 执行系统命令:os.system
- 区分:windows、linux、mac
二、封装成方便维护和使用的函数:
#!/usr/bin/env/python3
# coding=utf-8
# @Time : 2024-06-28 23:09:18
# @Author : weiyv_cn@163.com
# @File : pathFun.py
# @模块 : 路径处理
import os
class PathFun:
@staticmethod
def __system_order(deal: Literal["mkdir", "rm"], path, eTxt):
xtName = sys.platform.lower()
order = {
"mkdir": {
"doc": "创建文件夹",
"win32": "md",
"linux": "mkdir",
"mac": "sudo mkdir",
},
"rm": {
"doc": "删除文件夹",
"win32": "rd /s /q",
"linux": "rm -rf",
"mac": "sudo rm -rf",
},
}
if "win32" in xtName: # Windows系统:Windows
os.system(f'{order[deal]["win32"]} "{path}"')
elif "linux" in xtName: # linux系统:Linux
os.system(f'{order[deal]["linux"]} "{path}"')
elif "darwin" in xtName: # Mac系统:Darwin
os.system(f'{order[deal]["mac"]} "{path}"')
else:
print("============ Error ================")
print(f'Error: {order[deal]["doc"]}失败:{path}')
print(eTxt)
print("===================================")
封装函数后,可以供给项目使用,避免项目代码直接对三方函数产生依赖。这样,日后如果三方函数发生重大变革,只需要维护自己封装的函数,而大批量的项目代码无需改动,极大了降低了使用难度和维护成本。