Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Обнуление файлов в папке с подпапками

Ответить
Настройки темы
CMD/BAT - [решено] Обнуление файлов в папке с подпапками

Аватара для vk_k14m@vk

Старожил


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


Конфигурация

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


Есть папка. В ней может быть бесконечное количество подпапок (на самом деле не больше трех). Пример:
data\4f\cd
data\0b\72
data\fd\b0
data\sample\0a\96
data\sample\92\ef
data\sample\fd\db
и т.д.

Помогите написать скрипт, который будет помещен в папку "data". И при запуске обнулит размер (почти) всех файлов в подпапках без удаления этих файлов. И еще что б скрипт не трогал файл "Descr.WD3" который лежит в каждой конечной папке.

Отправлено: 01:44, 17-03-2017

 

Ветеран


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

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


Цитата vk_k14m@vk:
обнулит размер (почти) всех файлов в подпапках без удаления этих файлов. »
Зачем?

Отправлено: 03:05, 17-03-2017 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для vk_k14m@vk

Старожил


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

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


Цитата Iska:
Зачем? »
Наверно незачем. В другой теме уже ответили. Но как альтернативный вариант хотелось бы попробовать.

-------
Взялся отвечать, отвечай до конца!


Последний раз редактировалось vk_k14m@vk, 17-03-2017 в 04:51.


Отправлено: 04:44, 17-03-2017 | #3


Ветеран


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

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


vk_k14m@vk, Вы не ответили на вопрос. В чём будет состоять этот альтернативный вариант?

Отправлено: 07:05, 17-03-2017 | #4


Аватара для vk_k14m@vk

Старожил


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

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


Цитата Iska:
vk_k14m@vk, Вы не ответили на вопрос. В чём будет состоять этот альтернативный вариант? »
Мне нужно изменить неправильные расширения на правильные что с ними работать. Если я просто переименую или перемещу оригиналы то загрузкик скачает эти файлы заново. Можно сделать на эти файлы жесткие/символические ссылки и работать с ними не трогая оригиналы. А можно скопировать все оригиналы в другую папку, изменить расширение. А у оригиналов обнулить вес. Таким образом у меня будет две копии файлов. Но так как размер оригиналов нулевой то они не будут дважды занимать место на диске.

Сам загрузчик не сверяет объем файлов. Он смотрит только само наличие. Так что это можно назвать альтернативным решением моей проблемы.

-------
Взялся отвечать, отвечай до конца!


Отправлено: 17:28, 17-03-2017 | #5


Ветеран


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

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


Цитата vk_k14m@vk:
А у оригиналов обнулить вес. … Сам загрузчик не сверяет объем файлов. Он смотрит только само наличие.»
Вы пишете, что не сравнивает — но по умолчанию обязательно должен сравнивать.

Думаю, вариант с жёсткими ссылками в параллельном каталоге будет проще и надёжнее.
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:46, 17-03-2017 | #6


Аватара для vk_k14m@vk

Старожил


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

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


Цитата Iska:
Вы пишете, что не сравнивает — но по умолчанию обязательно должен сравнивать. »
Сравнивает если поставить эту галочку
Скрытый текст


С такими настройка он будет просто проверять наличие файлов
Скрытый текст


Цитата Iska:
Думаю, вариант с жёсткими ссылками в параллельном каталоге будет проще и надёжнее. »
Поверю на слово

-------
Взялся отвечать, отвечай до конца!


Отправлено: 03:11, 18-03-2017 | #7


Ветеран


Contributor


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

Профиль | Отправить 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



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Обнуление файлов в папке с подпапками

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - Удаление файлов старше N дней в подпаках, кроме файлов в самой папке Negtm Скриптовые языки администрирования Windows 4 03-02-2017 15:30
CMD/BAT - Проверка существования файлов в папке и копирование файлов в другую Funbeee Скриптовые языки администрирования Windows 2 07-09-2016 12:51
CMD/BAT - [решено] Обнуление файлов в папке User85vv Скриптовые языки администрирования Windows 4 21-09-2015 17:05
CMD/BAT - [решено] FTP загрузка папки с подпапками lohi1234567 Скриптовые языки администрирования Windows 3 21-09-2010 16:39
Драйвер - [решено] Поиск подходящего драйвера в заданной папке с подпапками Speaker Microsoft Windows 2000/XP 2 01-03-2008 19:07




 
Переход