База знаний Одина – Одинэсника › Форумы › ODIN – Форум по 1С Предприятию › Как проверить наличие файлов в сетевой папке перед копированием с помощью батник › RE: Как проверить наличие файлов в сетевой папке перед копированием с помощью батник
21 июля 2025 в 12:45
#32990

Участник
1С (Код)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
bat @echo on setlocal set "networkPath=\192.168.0.01cbackup1c_daily" set "localPath=C:LocalBackup1c_daily" set "username=1c" set "password=1" set "daysToKeep=1" net use %networkPath% /user:%username% %password% if errorlevel 1 ( echo error. exit /b 1 ) forfiles /p "%localPath%" /s /m *.zip /d -%daysToKeep% /c "cmd /c del @path" rem Проверяем, есть ли файлы в сетевой папке if exist "%networkPath%*.zip" ( xcopy "%networkPath%*.zip" "%localPath%" /D:%date:~3,2%-%date:~0,2%-%date:~8% /Y /I ) else ( echo No new backup files found in the network path. Existing local files will not be deleted. ) net use %networkPath% /delete echo ready endlocal |
В этом измененном батнике добавлена проверка на наличие файлов в сетевой папке перед выполнением команды xcopy
. Если файлов нет, выводится сообщение, и существующие локальные файлы не удаляются.