小编bre*_*dan的帖子

为什么 SET PATH= 在同一个批处理文件中不起作用?

我有一个带有 Dropbox 和 emacs 便携式安装的 USB 闪存驱动器。我想在emacs中运行的功能之一需要sha1sum.exe在路径中,所以我也把coreutils放在了USB上。我正在编写一个批处理文件,其中:

  1. 将 sha1sum.exe 的路径放在 PATH 中。(虽然我在做,还有 emacs 和 Dropbox 的路径)
  2. 在单独的进程中运行 Dropbox。
  3. 运行 emacs。

这是我所拥有的:

set PATH="%PATH%;%~d0\pathtocoreutils\bin;%~d0\pathtodropbox;%~d0\pathtoemacs\bin"
echo %PATH%
timeout 10
start DropboxPortableAHK.exe
timeout 10
runemacs.exe
Run Code Online (Sandbox Code Playgroud)

当我在新的命令窗口中运行它时,setecho命令给出了预期的结果,但其他一切都会给出错误,表明文件不在路径上(包括timeout为调试而添加的,不在任何新的 PATH 条目中):

'timeout' is not recognized as in internal or external command,
executable program or batch file.
The system cannot find the file DropboxPortableAHK.exe.
'timeout' is not recognized as in internal or external command,
executable program or batch file. …
Run Code Online (Sandbox Code Playgroud)

windows path batch-file

3
推荐指数
1
解决办法
1万
查看次数

标签 统计

batch-file ×1

path ×1

windows ×1