python别的linux机器上执行另一个机器得命令发到微信上
时间: 2023-08-06 18:09:13 浏览: 234
Python远程linux执行命令实现
要使用 Python 将另一个 Linux 机器上执行的命令的结果发送到微信,您可以进行以下步骤:
1. 在本地机器上安装 `paramiko` 库,该库可以用于远程登录和执行命令。可以使用以下命令进行安装:
```
pip install paramiko
```
2. 编写一个 Python 脚本,用于远程登录远程机器、执行命令并将结果保存到本地机器上的一个临时文件中。例如,将以下脚本保存为 `remote_cmd.py` 文件:
```
import paramiko
# 设置远程机器的用户名、IP 地址和密码
host = "remote_machine_ip"
user = "username"
password = "your_password"
# 设置要在远程机器上执行的命令
command = "command"
# 登录远程机器并执行命令,并将结果保存到本地机器上的一个临时文件中
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(host, username=user, password=password)
stdin, stdout, stderr = ssh.exec_command(command)
result = stdout.read()
ssh.close()
with open("/tmp/result.txt", "wb") as f:
f.write(result)
```
在脚本中,您需要设置远程机器的用户名、IP 地址和密码,以及要在远程机器上执行的命令。脚本执行完毕后,结果将保存到本地机器上的 `/tmp/result.txt` 文件中。
3. 在本地机器上执行以下命令,使用 Python 脚本登录远程机器并执行命令:
```
python remote_cmd.py
```
4. 使用 `curl` 命令将 `/tmp/result.txt` 文件中的内容上传到一个文件共享服务,例如 https://file.io,获取上传文件的 URL。
```
curl -F "file=@/tmp/result.txt" https://file.io
```
5. 将上传文件的 URL 发送到微信即可。
注意,为了保证安全性,您应该在远程机器上创建一个仅限于执行指定命令的用户,并使用该用户登录远程机器。另外,您需要确保本地机器和远程机器之间可以正常通信,并且远程机器可以访问互联网。
阅读全文