收藏 分销(赏)

Python 脚本速查手册.pdf

上传人:Stan****Shan 文档编号:1188690 上传时间:2024-04-18 格式:PDF 页数:20 大小:593.90KB
下载 相关 举报
Python 脚本速查手册.pdf_第1页
第1页 / 共20页
Python 脚本速查手册.pdf_第2页
第2页 / 共20页
Python 脚本速查手册.pdf_第3页
第3页 / 共20页
Python 脚本速查手册.pdf_第4页
第4页 / 共20页
Python 脚本速查手册.pdf_第5页
第5页 / 共20页
点击查看更多>>
资源描述

1、 目录 前言 4 Click 语法速查 5 不同类型的 Param 类型 5 不同类型的 Option 6 不同类型的 Argument 8 特殊用法 9 Python 常用运维模块 11 OS 模块 11 Shutil 模块 13 Sys 模块 14 Datetime 模块 15 psutil 模块 16 实用 Python 脚本案例 18 查看 CPU、内存信息 18 统计 Nginx 日志中的 IP 并绘制成图形 19 4 前言 Click 语法速查 Click 语法速查 不同类型的 Param 类型 str 字符串类型,传入参数会自动转换成字符串。int 数字类型,传入参数会自动转换成

2、数字。float 浮点型,传入参数会自动转换为浮点数字。bool 布尔值,传入参数会自动转换为布尔值。click.File(mode=r,encoding=None,errors=strict,lazy=None,atomic=False)文件类型,传入参数会被自动以文本形式读取内容。其中,Mode 用于设定读取的模式;click.Path(exists=False,file_okay=True,dir_okay=True,writable=False,readable=True,resolve_path=False,allow_dash=False,path_type=None)路径类型,传

3、入参数会自动以路径形式读取。其中 exists 要求文件是否必须存在;file_okay 判断是否是文件;dir_okay 判断是否是目 6 Click 语法速查 Click 语法速查 必选 option mand()click.option(-n,required=True,type=int)def dots(n):click.echo(.*n)多参数 option mand()click.option(-pos,nargs=2,type=float)def findme(pos):a,b=pos click.echo(fa/b)Flag 型 option mand()click.optio

4、n(-pos,nargs=2,type=float)def findme(pos):a,b=pos click.echo(fa/b)包含提问的 option mand()click.option(-name,prompt=True)def hello(name):click.echo(fHello name!)密码型 option mand()8 Click 语法速查 Click 语法速查 Print FILENAME if the file exists.click.echo(click.format_filename(filename)特殊用法 命令行输出到标准输出 import clic

5、k click.echo(Hello World!)命令行输出彩色 以下两种方法均可:import click click.echo(click.style(Hello World!,fg=green)click.echo(click.style(Some more text,bg=blue,fg=white)click.echo(click.style(ATTENTION,blink=True,bold=True)或 import click click.secho(Hello World!,fg=green)click.secho(Some more text,bg=blue,fg=whi

6、te)click.secho(ATTENTION,blink=True,bold=True)命令行输出分页 mand()def less():10 Click 语法速查 Python 常用运维模块 Python 常用运维模块 OS 模块 OS 模块是运维工程师在运维工作过程中使用最为频繁的模块,其中提供了大量操作系统底层的借口,帮助运维工程师完成自己的运维工作。os.getcwd()获取当前工作目录,即当前 Python 脚本的目录路径。os.chdir(dirpath)更改当前脚本工作目录,相当于在 Shell 下执行 cd 命令。os.curdir 返回当前目录路径。os.pardir 返

7、回上一级目录路径。os.makedirs(dir1/dir2)递归生成目录路径。os.removedirs(dirname1)删除目录,如果其中有文件,则递归删除。os.mkdir(dir)12 Python 常用运维模块 Python 常用运维模块 输出当前操作系统的名称,可以用于处理不同平台之间的差异。os.environ 获取当前系统的环境变量。os.access(path,mode)判断是否有权限对文件进行读、写、执行等操作。os.chmod(path,mode)修改文件的权限。os.chown(path,uid,gid)修改文件的属主和属组。os.symlink(src,dst)创建

8、软连接。os.times()获取系统进程运行时间。Shutil 模块 Shutil 模块提供了一系列的 Shell 功能,让运维工程师可以以更简单的方式完成 OS 模块无法完成的功能。shutil.copyfile(src,dst)复制源文件到目标路径。14 Python 常用运维模块 Python 常用运维模块 退出当前进程。参数为 0 时表示正常退出;参数为 1 时表示异常退出。sys.version 获取 Python 版本。sys.path 获取模块的搜索路径。sys.platform 获取操作系统名称。sys.stdin 标准输入。sys.stdout 标准输出。sys.stderr

9、 错误输出。Datetime 模块 datetime.date(year,month,day)构建一个 date 对象。datetime.date(year,month,day).today()返回当前的本地日期。16 Python 常用运维模块 Python 常用运维模块 psutil.disk_partitions()获取磁盘分区信息。psutil.disk_usage(/)获取磁盘使用情况。psutil.disk_io_counters()获取磁盘 IO。_io_counters()获取网络读写包的情况。_if_addrs()获取网络接口信息。_if_stats()获取网络接口状态。ps

10、util.pids()获取所有进程信息。18 实用 Python 脚本案例 实用 Python 脚本案例 memissue()print(*)cuplist()统计 Nginx 日志中的 IP 并绘制成图形#!/usr/bin/env python3#author:http:/ import matplotlib.pyplot as plt#nginx_file=nginx2018-12-18_07:45:26 ip=#筛选 nginx 日志文件中的 ip with open(nginx_file)as f:for i in f.readlines():s=i.strip().split()0

11、 lengh=len(ip.keys()#统计每个 ip 的访问量以字典存储 if s in ip.keys():ips=ips+1 else:ips=1#以 ip 出现的次数排序返回对象为 list ip=sorted(ip.items(),key=lambda e:e1,reverse=True)20 实用 Python 脚本案例#取列表前十 newip=ip0:10:1 tu=dict(newip)x=y=for k in tu:x.append(k)y.append(tuk)plt.title(ip access)plt.xlabel(ip address)plt.ylabel(PV)#x 轴项的翻转角度 plt.xticks(rotation=70)#显示每个柱状图的值 for a,b in zip(x,y):plt.text(a,b,%.0f%b,ha=center,va=bottom,fontsize=7)plt.bar(x,y)plt.legend()plt.show()

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 研究报告 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服