python批量运行cmd_python 之多主机批量执行命令(python批量执行多个py文件)

2023-05-15 1208阅读

Python是一种流行的编程语言,广泛应用于各个领域。在运维管理中,Python也有着重要的作用。本文将介绍如何使用Python批量运行cmd和Python文件。ips列表存储了多个主机的IP地址,username和password分别为登录远程主机的用户名和密码,cmd为要执行的命令。run.py代码如下:import osscripts = ['script1.py', 'script2.py', 'script3.py']for script in scripts:os.system上述代码中,scripts列表存储了要执行的Python脚本文件名。在运行run.py时,会依次执行scripts列表中的所有脚本。通过使用paramiko模块和os.system函数,可以轻松地实现多主机批量执行命令和多个Python脚本的运行。

Python是一种流行的编程语言,广泛应用于各个领域。在运维管理中,Python也有着重要的作用。本文将介绍如何使用Python批量运行cmd和Python文件。

一、多主机批量执行命令

在实际工作中,我们经常需要在多台服务器上执行相同的命令。如果手动一个一个登录执行,效率非常低下。这时候就可以使用Python来批量运行命令。

python批量运行cmd_python 之多主机批量执行命令(python批量执行多个py文件)

首先,需要安装paramiko模块。该模块提供了SSH客户端和服务器端的功能,可以用于远程控制服务器。

安装方法:

```

pip install paramiko

接着,编写Python脚本:

```python

import paramiko

def run_cmd(ip, username, password, cmd):

ssh = paramiko.SSHClient()

ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

ssh.connect(ip, 22, username, password)

stdin, stdout, stderr = ssh.exec_command(cmd)

print(f"{ip}: {stdout.read().decode('utf-8')}")

ssh.close()

if __name__ == '__main__':

ips = ['192.168.1.1', '192.168.1.2', '192.168.1.3']

username = 'username'

password = 'password'

cmd = 'ls -l /'

for ip in ips:

run_cmd(ip, username, password, cmd)

上述代码中,run_cmd函数用于连接远程主机并执行命令。ips列表存储了多个主机的IP地址,username和password分别为登录远程主机的用户名和密码,cmd为要执行的命令。

在运行脚本时,每个主机都会依次连接并执行相同的命令,输出结果如下:

192.168.1.1: total 96

drwxr-xr-x 1 root root 4096 Oct 12 14:18 bin

drwxr-xr-x 2 root root 4096 Apr 30 2018 boot

...

192.168.1.2: total 96

192.168.1.3: total 96

二、Python批量执行多个py文件

有时候,我们需要在多台服务器上执行多个Python脚本。同样地,手动一个一个执行非常麻烦,可以使用Python来批量运行。

首先,将所有要执行的Python脚本放到同一个目录下,并在该目录下创建一个run.py文件,用于批量执行其他脚本。run.py代码如下:

import os

scripts = ['script1.py', 'script2.py', 'script3.py']

for script in scripts:

os.system(f"python {script}")

上述代码中,scripts列表存储了要执行的Python脚本文件名。在循环中,使用os.system函数来执行每个脚本。

在运行run.py时,会依次执行scripts列表中的所有脚本。如果需要在多台服务器上执行,可以将run.py拷贝到每个服务器上,并修改scripts列表为相应的脚本文件名。

总结:

本文介绍了如何使用Python批量运行cmd和Python文件。通过使用paramiko模块和os.system函数,可以轻松地实现多主机批量执行命令和多个Python脚本的运行。

有云计算,存储需求就上慈云数据:点我进入领取200元优惠券

VPS购买请点击我

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]