我有一个Python脚本,它利用subprocess
调用MobaXterm,并使用它通过SSH向我的服务器运行命令。该脚本在使用Windows Subsystem for Linux(WSL(时运行良好,但在使用Moba时失败。这是代码:
import subprocess
moba_path = "C:Program Files (x86)MobatekMobaXtermMobaXterm.exe"
subprocess.run(f'{moba_path} -exec ssh my_server "mkdir test_dir"')
它打开MobaXterm窗口,但没有显示任何命令执行的迹象。我检查了一下,命令还没有执行(文件夹还没有创建(。
有什么想法吗?
因此,我找到了一种方法,可以使用-newtab
命令以编程方式使用Moba执行命令。它启动一个新的选项卡,然后运行指定的命令。
import subprocess
moba_path = "C:Program Files (x86)MobatekMobaXtermMobaXterm.exe"
subprocess.run(f'{moba_path} -newtab ssh my_server "mkdir test_dir"')