如何调用网络机器上的子进程及其环境

2024-09-29 00:22:50 发布

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

假设我在网络上的计算机上有以下open_calc.py脚本:

import subprocess
subprocess.call(['calc.exe'])

这个简单的脚本只打开Windows计算器并结束。然后,在本地计算机上,invoke_network_calc.py脚本包含:

^{pr2}$

如果我从本地计算机运行invoke_network_calc.py,则计算程序将在本地计算机上打开。我的问题是,有没有办法让计算器在网络计算机上打开?或者,更一般地说,有没有什么可以做的,从那一点开始,当subprocess.call被调用时,它会在不同的环境中启动这个过程?我知道如果我使用open_calc.py调用网络的Python引擎就可以做到这一点,但是有没有一种方法可以在不启动单独的Python进程的情况下做到这一点呢?在

编辑:也许一厢情愿的代码可以进一步指定我要找的内容:

redirector = Redirector('network_machine')
redirector.start() # from here on, subprocesses are executed on the remote machine
lecroyModule = imp.load_source('module', r'\\network_machine\c$\open_calc.py') # calculator will be opened on remote computer
redirector.stop() # from here on, subprocesses are executed normally (on the local machine)
lecroyModule = imp.load_source('module', r'\\network_machine\c$\open_calc.py') # calculator will be opened on local computer

所以基本上,我在问是否有人知道实现Redirector类的方法。在


Tags: 方法py网络脚本on计算机calcnetwork