Skip to main content
 首页 » 编程设计

python之命令行参数中的空格。无法正确读取 "C:\Program Files"

2025年05月04日18bluestorm

我需要运行静默安装。命令是这样的

setup.exe -silent -response <Response File> -jreLoc <jreLoc> 

jreLoc是需要找到bin/java的文件夹。

我已经安装了 JRockit 作为我的 JDK,它安装在 "C:\Program Files\Java\jrockit-jre1.6.0_29-R28.2.0"

我面临的问题是 jreLoc 的值只读到“C:\Program”,无论我在编辑路径或调整、双引号、正斜杠或反斜杠等方面做了什么。

我使用 Python 脚本设置所有环境,然后 Python 脚本调用 setup.exe 命令。

我已在线搜索,但解决方法无效。 非常感谢任何提示或指示。

请您参考如下方法:

所有包含空格的 Windows 路径也有一个不带空格的等效路径,如果您不知道如何让程序接受带空格的路径,您可以使用它。

对于您的特定示例,无空间路径可能是 C:\Progra~1\Java\jrockit-jre1.6.0_29-R28.2.0' 但如果您打开命令提示符并使用dir/x` 在顶级文件夹上,它会告诉你它在你的系统上是什么:

C:\>dir /x c:\progr* 
 Volume in drive C is XP System 
 Volume Serial Number is D8B8-DBEB 
 
 Directory of c:\ 
 
30/01/2012  16:16    <DIR>          PROGRA~1     Program Files 
13/02/2012  13:51    <DIR>          PROGRA~2     Program Files (x86) 
               0 File(s)              0 bytes 
               2 Dir(s)  26,189,307,904 bytes free