python脚本判断sshpass服务是否存在,不存在则yum安装
时间: 2023-08-16 19:09:39 浏览: 101
在 Python 中可以使用 `subprocess` 模块来执行命令。判断 `sshpass` 服务是否存在,可以执行 `sshpass -V` 命令,如果返回值为 0,则说明 `sshpass` 已经安装。如果返回值不为 0,则说明 `sshpass` 没有安装。
以下是一个示例代码:
```python
import subprocess
# 检查 sshpass 是否已经安装
try:
proc = subprocess.Popen(['sshpass', '-V'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
stdout, stderr = proc.communicate()
if proc.returncode != 0:
raise Exception('sshpass not found')
except Exception as e:
# 如果 sshpass 没有安装,则通过 yum 安装
print('sshpass not found, installing...')
proc = subprocess.Popen(['yum', '-y', 'install', 'sshpass'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
stdout, stderr = proc.communicate()
if proc.returncode != 0:
print('install sshpass failed')
print(stderr.decode('utf-8'))
else:
print('install sshpass success')
else:
print('sshpass already installed')
```
在上述示例中,首先执行 `sshpass -V` 命令检查 `sshpass` 是否已经安装。如果返回值不为 0,则说明 `sshpass` 没有安装,然后执行 `yum -y install sshpass` 命令来安装 `sshpass`。如果安装成功,则输出 `install sshpass success`。如果安装失败,则输出 `install sshpass failed` 并输出安装日志。如果 `sshpass` 已经安装,则输出 `sshpass already installed`。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)