Python常用运维模块(二)

Python常用运维模块

1、OS模块

OS模块是运维工程师在运维工作过程中使用最为频繁的模块,其中提供了大量操作系统底层的接口,帮助运维工程师完成自己的运维工作。

os.getcwd()

获取当前工作目录,即当前Python脚本的目录路径

os.chdir("dirpath")

更改当前脚本工作目录,相当于在 Shell 下执行 cd 命令

os.curdir

返回当前目录路径

os.pardir

返回上一级目录路径

os.makedirs("dir1/dir2")

递归生成目录路径

os.removedirs('dirname1')

删除目录,如果其中有文件,则递归删除

os.mkdir("dir")

删除目录,若目录不为空则无法删除,报错;相当于 shell 中 rmdir。

os.listdir("dir")

列出特定目录下文件和子目录

os.remove()

删除某个特定文件

os.rename("old name","newname")

重命名某个文件

os.stat("filename")

获取某个文件/目录的信息

os.sep

输出目录路径分隔符,可以用于处理不同平台之间的差异

os.linesep

输出文件行终止符,可以用于处理不同平台之间的差异

os.pathsep

输出用于分隔文件路径的字符串,可以用于处理不同平台之间的差异

os.name

输出当前操作系统的名称,可以用于处理不同平台之间的差异

os.environ

获取当前系统的环境变量

os.access(path,mode)

判断是否有权限对文件进行读、写、执行等操作

os.chmod(path,mode)

修改文件的权限

os.chown(path,uid,gid)

修改文件的属主和属组

os.symlink(src,dst)

创建软连接

os.times()

获取系统进程运行时间

2、Shutil 模块

Shutil 模块提供了一系列的 Shell 功能,让运维工程师可以用更简单的方式完成 OS 模块无法完成的功能。

shutil.copyfile(src,dst)

复制源文件到目标路径

shutil.copymode(src,dst)

复制源文件权限到目标文件

shutil.copystat(src,dst)

复制源文件文件、最近修改时间、Flag 等到目标文件

shutil.copy(src,dst)

复制源文件到目标路径

shutil.copy2(src,dst)

复制源文件及相关元信息到目标路径

shutil.move(src,dst)

移动文件/目录

shutil.disk_usage(path)

返回对应路径的磁盘的使用统计情况

shutil.copytree(src,dst)

将 src 的整个目录树复制到 dst 目录

shutil.which

获取要执行的命令的路径

3、Sys模块

sys.exit(0)

退出当前进程。参数为 0 时表示正常退出;参数为 1 时表示异常退出

sys.version

获取 Python 版本

sys.path

获取模块的搜索路径

sys.platform

获取操作系统名称

sys.stdin

标准输入

sys.stdout

标准输出

sys.stderr

错误输出

4、Datetime模块

datetime.date(year,month,day)

构建一个 date 对象

datetime.date(year,month,day).today()

返回当前的本地日期

datetime.date(year,month,day).strftime(format)

对时间进行格式化后输出

datetime.now()

返回当前时间

datetime.timestamp()

返回当前时间戳

5、Psutil模块

psutil 模块非 Python 内置模块,在使用前需要执行 pip install psutil 进行安装。

psutil.cpu_count()

获取 CPU 逻辑核心数

psutil.cpu_count(logical=False)

获取 CPU 物理核心数

psutil.cpu_times()

获取 CPU 的用户/系统/空闲时间

psutil.virtual_memory()

获取系统的内存信息

psutil.swap_memory()

获取系统交换内存的信息

psutil.disk_partitions()

获取磁盘分区信息

psutil.disk_usage('/')

获取磁盘使用情况

psutil.disk_io_counters()

获取磁盘 IO

psutil.net_io_counters()

获取网络读写包的情况

psutil.net_if_addrs()

获取网络接口信息

psutil.net_if_stats()

获取网络接口状态

psutil.pids()

获取所有进程信息

你可能感兴趣的:(Python,运维,python,linux)