Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Ветеран


Contributor


Сообщения: 2735
Благодарности: 1699

Профиль | Отправить PM | Цитировать


Если очень хочется обнулить размер (почти) всех файлов в подпапках без удаления этих файлов
Код: Выделить весь код
@Echo Off

Set "BoxIn=Z:\Data\*.*"

Set "Exclude=\Descr.WD3"

Echo %Exclude%>~Exclude.tmp
Echo %~nx0>>~Exclude.tmp
md >"%~nx0.tmp" 2>nul

FOR /F "usebackq delims=" %%f IN (`xcopy "%BoxIn%" "%Tmp%\" /S /L /EXCLUDE:~Exclude.tmp`) DO If Exist "%%~dpnxf" Copy "%~nx0.tmp" "%%~dpnxf" >nul

Del ~Exclude.tmp
Del "%~nx0.tmp"
Здесь указан полный путь к обрабатываемой папке Data, это сделано намеренно для безопасности
Можно и без указания пути, но очень опасно
Код: Выделить весь код
@Echo Off

Set "Exclude=\Descr.WD3"

Echo %Exclude%>~Exclude.tmp
Echo %~nx0>>~Exclude.tmp
md >"%~nx0.tmp" 2>nul

FOR /F "usebackq delims=" %%f IN (`xcopy *.* "%Tmp%\" /S /L /EXCLUDE:~Exclude.tmp`) DO If Exist "%%~dpnxf" Echo Copy "%~nx0.tmp" "%%~dpnxf" >nul

Del ~Exclude.tmp
Del "%~nx0.tmp"
По содержанию скрипт очень опасен, при запуске в неположенном месте испортит кучу файлов, для работы уберите красное Echo

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 18-03-2017 в 16:09.

Это сообщение посчитали полезным следующие участники:

Отправлено: 15:50, 18-03-2017 | #8