使用python脚本运行多个进程和IPC

2024-03-29 12:34:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在开发一个测试自动化框架。我需要使用python脚本启动三个进程(客户机、主机适配器和主机)。我不熟悉python语言。你知道吗

我有一个启动主机适配器和主机的python脚本。 当他们等待客户端启动时,我需要启动客户端。客户机与主机适配器通信。 如果我用相同的脚本启动客户机,我会收到SIGPIPE信号。因此,我将启动客户机的代码移到了另一个脚本中

如果尝试从不同的脚本启动客户机,则客户机和主机适配器之间没有通信。你知道吗

脚本1如下所示:

import paramiko
paramiko.util.log_to_file('ssh.log')

#Starting process 1- Host
client2 = paramiko.SSHClient()
client2.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client2.connect('10.4.0.65',22, username='FBML7HR', password='mypwd')
stdin, stdout, stderr = client2.exec_command('cd  /var/home/FBML7HR/SrcCode/yyy/xxx/north/test/hostsim/; ./host')

#Starting process 2- Host adatpor

client1 = paramiko.SSHClient()
client1.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client1.connect('10.4.0.65',22, username='FBML7HR', password='mypwd')
 stdin, stdout, stderr = client1.exec_command('cd /var/home/FBML7HR/SrcCode/yyy/xxx/north/build/Linux-2.6.18-194.8.1.el5/bin/; export VXNHOME=/home/FBML7HR ;echo $VXNHOME; ./hostadptor')

脚本2如下所示:

import paramiko
paramiko.util.log_to_file('ssh1.log')

#Starting Client
client3 = paramiko.SSHClient()
client3.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client3.connect('10.4.0.65',22, username='FBML7HR', password='mypwd')
stdin, stdout, stderr = client3.exec_command('cd   /var/home/FBML7HR/SrcCode/yyy/xxx/north/test/vxnclient_mt; ./vxnclient_north_mt 105 19239 105 16889 19239 60000 60000 1 1; ps -ef | grep vxnclient_north_mt')

使用这些脚本执行进程间通信缺少什么? 任何帮助都将不胜感激。你知道吗


Tags: 脚本loghostparamikohome客户机适配器starting