Python之Polysh交互式命令工具

Polysh是一个交互式命令工具,可以批量处理服务器。Python编写的另一个工具pexpect也可以实现交互时命令的自动化,它是对expect的封装,但是不足的是需要手动执行一遍得到需匹配的字符串,再通过已知的字符串来定位,从而效率上显得不尽人意。Polysh则是更高效的一个工具。

通过pip install polysh进行安装,默认路径可能在/usr/local/pythonx.x.x/bin/,需要自行创建软链接到/usr/bin/

最好先配置ssh免密钥认证,见:自动化部署SSH密钥认证

下面是一个批量修改root密码的例子:

[root@Ansible Python]# polysh --hosts-file=hosts
ready (2)> passwd root
192.168.244.155 : Changing password for user root.
192.168.244.155 : New password:
192.168.244.244 : Changing password for user root.
192.168.244.244 : New password:
waiting (2/2)> 111
192.168.244.155 : BAD PASSWORD: The password is a palindrome
192.168.244.244 : BAD PASSWORD: The password is a palindrome
192.168.244.155 : Retype new password:
192.168.244.244 : Retype new password:
waiting (2/2)> 111
192.168.244.155 : passwd: all authentication tokens updated successfully.
192.168.244.244 : passwd: all authentication tokens updated successfully.


「 文章如果对你有帮助,请点个赞哦^^ 」 

0