不被识别为内部或外部命令,可操作程序或批处理文件

时间:2015-10-02 01:23:54

标签: python windows path subprocess call

我正在尝试从Python调用外部函数:该函数是vboxmanage.exe,我通过子进程调用访问它。问题是调用无法找到vboxmanage.exe程序,即使它已在路径变量中列出。我尝试了所有可能的组合,路径,没有路径,列出了完整的导演,没有列出导演,但是呼叫从未找到它:vboxmanage不被识别为内部或外部命令,可操作程序或批处理文件。

我的问题在这里:

  1. 在Windows 10推荐提示中,为什么调用忽略我的路径变量,路径变量工作正常?我正在使用shell = True,所以这不应该发生。
  2. 为什么不能指定程序的路径并让它从命令提示符执行(假设它不在路径变量中)。这曾经很久以前在DOS下工作,但在Windows 10中却没有。当我在命令提示符下键入“c:\ Program Files .... \ vboxmanage.exe”时,它将找不到该程序。我必须先进入目录并执行它。
  3. 有没有办法通过call命令手动导航到目录,然后调用第二个调用命令来打开vboxmanage.exe?
  4. from subprocess import call
    param="c:\\Program Files\Oracle\VirtualBox\\vboxmanage controlvm MacBook keyboardputscancode "+h
    print (param)
    call([param], shell=True)
    

1 个答案:

答案 0 :(得分:0)

只需转到这些文件夹:C:\Program Files\Oracle\VirtualBox并复制其中的所有文件,然后将其粘贴到此文件夹中:C:\Users\username\VirtualBoxVMs\Ubuntu64,其中包含.VDI文件。然后打开命令提示符并导航到此文件夹:C:\Users\Username\VirtualBoxVMs\Ubuntu64并从那里运行命令,它将被识别。

相关问题