ai didi

python - Sublime Text 2 - 无法运行带有空格和引号的 Windows 命令

转载 作者:可可西里 更新时间:2023-11-01 13:26:35 24 4
gpt4 key购买 nike

我有一个生成 Windows 命令的小 Python 脚本:

def quoted(s):
return '"' + s + '"'

import os
path = 'C:\\Program Files\\SumatraPDF\\SumatraPDF.exe'
params = ' -page 5 '
arg = 'D:\\Dropbox\\Final Term\\Final Draft.pdf'
cmd = quoted(path) + params + quoted(arg)
print cmd
os.system(cmd)

这不会在 Sublime Text 2 中运行(按 Ctrl+B):

"C:\Program Files\SumatraPDF\SumatraPDF.exe" -page 5 "D:\Dropbox\Final Term\Final Draft.pdf"
'C:\Program' is not recognized as an internal or external command,
operable program or batch file.
[Finished in 0.1s]

但如果我手动将命令(由该脚本输出)复制并粘贴到 cmd.exe 中,则会运行。

如何让它发挥作用?

最佳答案

这是文件路径中的空间问题(这是 Windows 上的问题)。 os.system() 打开一个命令 shell,这个行为是从你的命令 shell 继承的。如果您打开“DOS 框”并键入同样的事情,你会得到同样的结果 - 它是 Windows 命令外壳,需要引用带有嵌入空格的路径。您应该使用另一对引号。

关于python - Sublime Text 2 - 无法运行带有空格和引号的 Windows 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24970671/

24 4 0
文章推荐: windows - git clean 是否支持移动到回收站?
文章推荐: jquery - 如何使用 jquery each 函数获取值列表
文章推荐: php - 将内置颜色配置文件应用于图像
文章推荐: c++ - 在没有cygwin环境的情况下在windows中运行cygwin构建的exe
可可西里
个人简介

我是一名优秀的程序员,十分优秀!

滴滴打车优惠券免费领取
滴滴打车优惠券
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com