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

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

Ответить
Настройки темы
CMD/BAT - [решено] Нужно найти все файлы *.log в папке dir и подпапках и заменить на файлы нулевой длины

Новый участник


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

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


Нужно найти все файлы *.log в папке dir и подпапках и заменить на файлы нулевой длины
(Собственно *.log перед этим надо скопировать, но это не проблема)

Заранее спасибо

Отправлено: 14:57, 23-08-2010

 

Аватара для gora

Ушёл из жизни


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

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


Код: Выделить весь код
@Echo Off
Set src=c:\Temp\11
For /R "%src%" %%a In (*.log) Do (
	Rem надо скопировать, но это не проблема
	CD .>"%%a"
)
Это сообщение посчитали полезным следующие участники:

Отправлено: 15:13, 23-08-2010 | #2



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

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


Новый участник


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

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


Спасибо

Отправлено: 15:26, 23-08-2010 | #3


Ветеран


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

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


Подскажите, как посчитать и удалить логи, чтобы при следующем запуске их сумма была равна нулю. Проблема в высвобождении логов от системы. В нуль никак не получается.
Код: Выделить весь код
@Echo Off
SetLocal enabledelayedexpansion
  For /F "Delims=" %%I In ('Dir c:\*.log /B/S/A:-D-H 2^>nul') Do (
      Echo %%I
      set "DR=%%~dpI"
      set /a iSumL +=%%~zI
PUSHD "!DR:~0,-1!"
del /q "%%I"
POPD
            	  )
Echo !iSumL!
pause

Отправлено: 16:41, 04-07-2012 | #4


Ветеран


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

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


Решено!
Код: Выделить весь код
@Echo Off
SetLocal enabledelayedexpansion
  For /F "Delims=" %%I In ('Dir c:\*.log /B/S/A:-D-H 2^>nul') Do (
      Echo %%I
      2>&1 del /q "%%I" | 1>nul findstr "."
      if errorlevel 1 (set /a iSumL +=%%~zI) else (set iSumL=0)
)
Echo !iSumL!
pause>nul

Последний раз редактировалось sov44, 05-07-2012 в 09:17. Причина: решено


Отправлено: 21:28, 04-07-2012 | #5



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Службы - Файлы lpksetup.log в папке \Temp Mad_Doctor Microsoft Windows Vista 4 22-02-2019 10:35
Любой язык - Нужно быстро (!) добавить/удалить строку во все файлы указанной директории Possessed Скриптовые языки администрирования Windows 6 04-10-2011 22:29
Интернет - из интернета загружаются файлы нулевой длинны. Magikanin2006 Microsoft Windows 2000/XP 5 03-06-2010 16:52
CMD/BAT - файлы вида mmdd*.* - для каждой даты нужно создать каталог, скопировать, файлы milito Скриптовые языки администрирования Windows 2 24-05-2009 23:32
что будет если заменить все файлы в систем 32 den1son Microsoft Windows 2000/XP 3 18-12-2005 23:39




 
Переход