0
我尝试在您的某个项目的部署阶段运行以下脚本。但没有成功。该脚本应删除所有以更新开头的所有文件夹和所有.zip文件,然后将新的zip复制到目标。脚本任务删除文件夹在部署阶段失败
我的脚本:
@echo off
set "pathToCopy=\\{server}\Updates"
set "fileName=Update*.zip"
set "username=user"
set "password=secret"
echo Get network share rights...
net use "%pathToCopy%" /USER:%username% %password%
if not "%errorlevel%"=="0" echo Network access not possible & exit /b 1
for /D %f in ("%pathToCopy%\Update*") do rmdir %f /S /Q
del "%pathToCopy%\Update_*.zip"
copy "%fileName%" "%pathToCopy%"
的del
和copy
命令工作正常,但for
与rmdir
不和我收到以下消息(SyntaxError错误)
"pathToCopyf" kann syntaktisch an dieser Stelle nicht verarbeitet werden. (German)
我可以使用本地开发机器上的cmd运行脚本,而不会有任何问题。我可以从我的本地机器,当我运行for
没有()
for /D %f in "%pathToCopy%\Update*" do rmdir %f /S /Q
因此重现此错误,有没有竹(5.9.3)处理for
一个Bug? 我必须重写我的for
吗? 我还需要使用通配符删除所有文件夹还有哪些其他解决方案?
你的引号是不正确的。使用'set pathToCopy =“\\ {server} \ Updates”',但如果您有空格,则只需要引号。 – FloatingKiwi
另外,在使用批处理文件时,您需要将另一个符号转义为%符号。即'%% f' – FloatingKiwi
@FloatingKiwi就是这样。将'%f'修复为'%% f'解决了我的问题。添加它作为答案 – Jehof