0

我正在编写一个 python 程序来自动化某些 Windows 命令,这应该会导致创建一个我可以在 Virtual box 中执行的 iso 文件。

有 4 个命令,最后是“mkisofs -no-emul-boot -boot-load-size 4 -o filename.iso -b filename.flp cdiso/”

我使用 os.popen 来执行命令,我发现除了最后一个命令之外的所有东西都可以正常工作。

从返回的对象中,我只能得到状态码 68864。我知道它不起作用,因为 Virtual box 在尝试加载 iso 文件时返回错误。

这里可能出了什么问题?

谢谢!

4

1 回答 1

0

IIRC,返回的错误与库调用popen相同。system()要提取实际错误,您必须使用WEXITSTATUS宏。

幸运的是,您可以使用此功能作为os.WEXITSTATUS.

>>> import os
>>> os.WEXITSTATUS(68864)
13

我不确定这意味着什么,它可能会在终止之前向控制台打印一些错误。您是否尝试手动运行该程序?

一个疯狂的猜测是这个13数字实际上errno是导致失败的原因。如果是这样的话,那么:

>>> os.sterror(13)
'Permission denied'
于 2013-10-13T12:56:10.130 回答