mwz,
alpap,
Цитата mwz:
if not exist "%destdir%\nul" md "%destdir%" »
|
Эта конструкция не рабочая. Без nul работает
Вот тестовый батник
Код:

@Echo Off
cls
Set "destdir=Z:\kuku1"
2>nul Rd /S /Q %destdir%
If Not Exist "%destdir%\nul" (md "%destdir%" &Echo kuku11)
If Not Exist "%destdir%\nul" (md "%destdir%" &Echo kuku12)
Echo -------------------------------------------------
Set "destdir=Z:\kuku2"
2>nul Rd /S /Q %destdir%
If Not Exist "%destdir%" (md "%destdir%" &Echo kuku21)
If Not Exist "%destdir%" (md "%destdir%" &Echo kuku22)
pause
GoTo :Eof
Вот результат
Код:

kuku11
Подпапка или файл Z:\kuku1 уже существует.
kuku12
-------------------------------------------------
kuku21
mwz, А удалять папку
RD /S /Q "%sourcedir%" это крайне опрометчиво: допустим, xcopy не все файлы скопировал (например, места не хватило или путь недоступный указан).
Надо поберечься. Вот вариант решения. Непустые папки удалены не будут
Код:

@Echo Off
Set "FoldIn=C:\UTM\transporter\transportDB"
Set "FoldOut=D:\Server\Fasa2\UTM\transporter"
Call :FileMove "%FoldIn%" "%FoldOut%"
For /F "usebackq delims=" %%i In (`2^>nul Dir "%FoldIn%" /B /S /A:D ^|Sort /R`) Do 2>nul Rd "%%i"
2>nul Rd "%FoldIn%"
GoTo :Eof
:FileMove
If Not Exist "%~2\%~nx1" Md "%~2\%~nx1"
FOR /F "usebackq delims=" %%f IN (`2^>nul Xcopy /H /E /R /D /F %1 "%~2\%~nx1\"`) DO (
Set "SS=%%f"
Call :Xdel "%%SS: -> =" "%%"
)
Exit /B
:XDel
If Exist %2 Del %1
GoTo :Eof