Python自动化运维相关总结
1. Python开发及调试环境
1.1 Python编辑器
Eclipse:专业的程序开发工具,需要结合pydev使用
PyCharm:专用的Python开发工具
1.2 Python的包管理工具
easy_install:可以用来安装、查看、卸载安装包
pip:是easy_install的改进版,能够实现的功能更多,现在也最常用
1.3 Python编程常用工具
IPython:提供交互式编程,一款强大好用的调试工具
jupyter:基于ipython,让你可以通过浏览器进行python程序远程调试
pyenv:方便管理不同的python版本,支持多版本python在一个系统下运行
virtualenv:可以用来管理不同的项目,结合pyenv使用更加犀利
2.打造命令行工具
2.1 sys模块
•使用sys.argv获取命令行参数
•使用sys.stdin和fileinput读取标准输入
•使用SystemExit异常打印异常信息
•使用getpass库读取密码
2.2 使用ConfiParse解析配置文件
2.3 使用argparse解析命令行参数
2.4 使用logging记录日志
3.5 使用click解析命令行参数
3.文本处理
字符串格式化:format形式化
正则表达式
字符串编码:utf8,unicode
Jinja2模板:输出带有变量的文本
4.linux系统管理
4.1 文件读写
with open('/etc/passwd', 'r ') as f:
print(f.read())
4.2 文件与文件路径管理:os模块
•os.getcwd():获取当前路径
•os.basename():
•os.abspath():
•os.isabs():
•os.getatime()
•os.getctime()
•os.getmtime()
•os.listdir()
•os.path.realpath()
•os.rmdir()
•os.remove()
•os.removedirs()
•os.rename()
4.3 查找文件
•fnmatch:支持通配符查找
•glob:查找特定文件
•os.walk:遍历目录书
4.4 高级文件处理接口shutil
•复制文件:shutil.copy
•复制文件夹:shutil.copytree
•文件或文件夹的移动或改名:shutil.move
4.5 文件夹管理
•目录和文件比较:filecmp模块
•MD5校验和比较:hashlib模块
4.6 使用Python管理压缩包
•tarfile:读取、创建tar包
•zipfile:创建和读取zip文件
•shutil:创建和读取压缩包
4.7 Python中执行外部命令
•subprocess.call:执行外部命令
•subprocess.check_call:与call类似
•subprocess.check_output:
5.用python编写的系统监控程序
•dstat:用来替代vmstat,netsta,ifstst,iostat等,功能强大,实时显示系统的资源状态
•glances:交互式监控工具,能够实时监控系统资源的状态
•htop:改进的top命令,功能更强,显示更明了
•psutil模块:可以获取系统的各项参数,一些监控工具就是基于此模块开发的
6.文档与报告
•excel文档操作工具:openpyxl模块
•pdf文件操作工具:PyPDF2模块
•创建pdf文档:PdfFileWrite模块
•图片管理:
• •Pillow模块
• •Image模块
•使用邮件发送报告:smtplib模块,mime模块
#Python#
查看9道真题和解析
海康威视公司福利 1139人发布