pssh是一款开源的软件,使用python实现,用于批量ssh操作大批量机器;pssh是一个可以在多台服务器上执行命令的工具,同时支持拷贝文件,是同类工具中很出色的;比起for循环的做法,我更推荐使用pssh!使用pssh的前提是:必须在本机与其他服务器上配置好密钥认证访问(即ssh信任关系)。
**语法格式:** pssh [参数] [文件]
**常用参数:**
| -h | 执行命令的远程主机列表文件 |
| ---- | ----------------------------------------------------------------------------------------------------- |
| -l | 远程机器的用户名 |
| -p | 一次最大允许多少连接 |
| -A | 提示输入密码并且把密码传递给ssh(注意这个参数添加后只是提示作用,随便输入或者不输入直接回车都可以) |
| -O | 设置ssh参数的具体配置,参照ssh_config配置文件 |
| -x | 传递多个SSH 命令,多个命令用空格分开,用引号括起来 |
| -X | 同-x 但是一次只能传递一个命令 |
**参考实例**
批量执行命令:
```
[root@anycode ~]# pssh -h hosts.txt -l root -i 'uptime'
```
如果添加-A参数,那么即使提前做了ssh信任关系,还是会提示输入密码:
```
[root@anycode ~]# pssh -h hosts.txt -l root -i -A 'uptime'
```