更改批处理文件的当前工作文件夹

时间:2017-09-01 16:47:11

标签: windows batch-file

我的批处理文件存在问题

这是批处理文件:

del mod.ff

xcopy ui_mp ..\..\raw\ui_mp /SY
xcopy english ..\..\raw\english /SY
xcopy ui ..\..\raw\ui /SY
xcopy sound ..\..\raw\sound /SY
xcopy soundaliases ..\..\raw\soundaliases /SY
xcopy promod ..\..\raw\promod /SY
xcopy maps ..\..\raw\maps /SY
xcopy mp ..\..\raw\mp /SY
xcopy shock ..\..\raw\shock /SY
xcopy xmodel ..\..\raw\xmodel /SY
xcopy shock ..\..\raw\shock /SY
xcopy readme.txt ..\..\raw /SY
copy /Y mod.csv ..\..\zone_source
cd ..\..\bin
linker_pc.exe -language english -compress -cleanup mod
cd ..\Mods\PromodLive218
copy ..\..\zone\english\mod.ff

pause

当我运行它时,它开始执行C:\WINDOWS\System32中的所有命令(开始搜索),而不是批处理文件所在的Program Files中的文件夹....

我该如何改变?如何将当前工作文件夹设置为批处理文件所在的目录而不是WINDOWS system32目录?

当我运行它时,我得到了这个:

  

C:\ WINDOWS \ system32> del mod.ff

     

无法找到C:\ WINDOWS \ system32 \ mod.ff

应该搜索C:\ Program Files(x86)\ itd itd itd,如何在Program Files而不是System32中进行搜索?

1 个答案:

答案 0 :(得分:4)

要更改工作文件夹,请使用cd命令 在批处理文件中,您可以获取批处理文件所在的文件夹:

cd /d "%~dp0"

只需将该命令放在脚本的开头即可。