使用Path变量在bat文件中启动程序


2

我经常使用命令行应用程序。它的路径是在环境选项中定义的,所以在PATH变量中。当我手动启动控制台时,如果我输入程序名称,它就会启动。

例如,我键入theprogram -option1 -option2然后它与任何工作目录一起启动。(.exe路径由PATH环境解决)。

如果我在.bat文件中写入相同内容,Windows会弹出一个消息框,说它无法找到该程序。在.bat文件中有start theprogram -option1 -option2,但我收到错误消息。因此,似乎该PATH变量未在.bat/ .cmd文件中使用。

如何theprogram.bat不指定完整路径的情况下从文件启动?Windows 7是否禁用/ files中的PATH变量?.bat.cmd

Answers:


3

我在Windows 7上一直这样做没有任何问题。尝试省略'start'指令,然后直接使用程序名称在批处理文件中运行程序,例如

theprogram -option1 -option2

如果名称或路径中有空格,请不要忘记使用引号,例如

"the program" -option1 -option2

如果仍然无效,请尝试运行一个非常简单的批处理文件来检查您的环境变量是否正确加载,例如将其保存为批处理文件并运行它:

set
pause

1
OP在他的问题中表示已经尝试过这个问题。
丹尼斯

1
@Dennis不是我读的问题。他使用'start'来运行程序,而不仅仅是程序名称。我已经扩展了一点答案。
snowdude 2013年

是的snwodude,这是真的,但实际上它现在正在发挥作用。我的事情是因为我重新启动,因为它很糟糕...所涉及的PC运行24 / 24.可能在修改PATH变量时有一种限制:你可以直接在控制台中使用它,但你必须重启到获取在bat文件中处理的新PATH项目?不管怎样,现在好了。
Kloze 2013年

1
>我输入程序-option1 -option2然后它启动任何工作目录。[...]如果我在蝙蝠文件中写相同的内容,Windows会弹出一个消息框,说它无法找到该程序。
丹尼斯

没问题丹尼斯,似乎问题是由于系统在PATH修改后没有重新启动而引起的...
Kloze 2013年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.