我想从另一个运行批处理文件,但在这样做时我遇到了问题。第一批执行第二批,它们都在不同的文件夹中。
但问题是,当执行第二批时,它似乎位于第一个文件夹,这是不正确的,因为第二批应该在文件夹B中而不是在A中。 我确定问题是第一批是运行一切的那一批,所以其他一切都好像是第一批处理的一部分。
那我怎么解决这个问题呢?
这是我的代码:
-> batch in folder A: start "" C:\Users\MyUser\Desktop\FOLDER-B\HERE.bat &
-> batch in folder B: echo WHY AM I STILL IN FOLDER-A ? && pause
答案 0 :(得分:1)
因为您从文件夹A启动了批处理。可执行文件的位置无关紧要,它也可以是路径中的任何其他可执行文件。如果你想start
可执行文件(在这种情况下是一个批处理文件),其起始目录是(可执行文件所在的位置),那么
pushd .....folder-B
start "" here.bat ...
popd
pushd
更改了所需目录,因此无需指定完整的文件路径。 popd
返回原始目录。