python3 fabric3 模块之 fab 命令
python2 使用fabric 模块可以通过 SSH 实现在本地或远程机器上自动化、流水化地执行 Shell 命令。
安装
pip3 install fabric3
fabric 依赖第三方 setuptools,crypto,paramiko,所以推荐使用 pip3 安装,会自动匹配依赖包。注意是 fabric3
。
如果使用 pip3 install fabric ,在导入的之后执行的时候会有问题。
fab 语法
fab 是 fabric 程序的命令行入口,在命令行使用!!!
,语法:
fab [options] <command>[arg1,arg2:val2,host=foo]
fab 命令的执行,默认依赖一个 fabfile.py 的文件
,可以对该文件进行编辑,也可以执行其他的文件,用 -f 参数指定文件即可。
fab 参数
可以使用 fab -help 查看具体参数:
-l, 显示定义好的任务函数名
-f, 指定 fab 入口文件,默认 fabfile.py
-g, 指定网关设备,比如堡垒机环境,填写堡垒机 ip 即可
-H, 指定目标主机,多台用逗号隔开
-P 以异步并行方式运行多主机任务,默认串行运行
-R, 指定 role,以角色名区分不同业务组设备
-t 设置设备连接超时时间
-T 设置远程主机命令执行超时时间
-w 当命令失败的时候,发出警告,而不是终止任务
-p 指定密码
fabric 常用 api
fabric 执行本地命令和远程命令,必须先导入 fabric 对应的 api 接口。
常用 api