|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Помогите написать скриптик, решющий задачи поиска и удаления по таким критериям |
|
CMD/BAT - Помогите написать скриптик, решющий задачи поиска и удаления по таким критериям
|
Новый участник Сообщения: 1 |
Профиль | Отправить PM | Цитировать Здравствуйте, помогите пожалуйста написать скрип для windows xp, выполняющий следующие действия:
Скрипту указывается начальная директория, в которой он: 1.Удаляет все файлы с расширением .html или .xml, которые меньше 5kb и больше 1mb. 2.После действия 1 удаляет все поддиректории в начальной директории, в которых не осталось файлов с расширением .html или .xml. Удаляет со всем остальным содержимым. Заранее спасибо |
|
Отправлено: 13:41, 10-02-2011 |
Ветеран Сообщения: 1001
|
Профиль | Отправить PM | Цитировать Вот VBS скрипт, который решает вашу задачу в папке "c:\test", в моем примере
strComputer = "." i=0 Set FSO = CreateObject("Scripting.FileSystemObject") Set objFolder = FSO.GetFolder("C:\test") Set colSubfolders = objFolder.Subfolders For Each objSubfolder in colSubfolders For Each file In objSubfolder.files If Right(File.Name,4)="html" Or Right(File.Name,4)=".xml" Then i = i + 1 If file.size < 5120 Or file.size > 1048576 Then file.delete i = i - 1 End If End If Next ShowSubFolders(objSubfolder) If i = 0 Then objsubfolder.delete End If i = 0 Next Sub ShowSubFolders(Folder) For Each Subfolder In Folder.SubFolders For Each file In Subfolder.files If Right(File.Name,4)="html" Or Right(File.Name,4)=".xml" Then i = i + 1 If file.size < 5120 Or file.size > 1048576 Then file.delete i = i - 1 End If End If Next ShowSubFolders Subfolder Next End Sub |
Отправлено: 00:51, 12-02-2011 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Googler Сообщения: 3665
|
Профиль | Отправить PM | Цитировать @echo off set $DIR=C:\TEST for /f "delims=" %%a in ('dir/b/s/a-d "%$DIR%\*.xml" "%$DIR%\*.html"') do ( if %%~za lss 5120 del /f "%%a" if %%~za gtr 1048576 del /f "%%a" ) dir /b/s/ad "%$DIR%\*"|sort /r >"%TEMP%\%~n0.tmp" for /f "usebackq delims=" %%a in ("%TEMP%\%~n0.tmp") do ( (dir /b/ad "%%a\*" 2>nul dir /b/a-d "%%a\*.xml" "%%a\*.html" 2>nul )|find /c /v "" >nul||rd /s/q "%%a" ) |
Отправлено: 12:02, 12-02-2011 | #3 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Система - Программы для поиска и удаления дубликатов файлов | Alex Cop | Программное обеспечение Windows | 61 | 07-01-2018 12:00 | |
Delphi - Помогите написать программу для поиска суммы двух знаком двухзначного числа. | highlander5 | Программирование и базы данных | 6 | 28-01-2011 12:38 | |
Помогите все кто встречался с таким! | MeXXXanik | Тест-форум | 2 | 29-10-2010 20:42 | |
IE 6.0 SP1-в поисковиках не могу написать сроку поиска | AlexKKK | Защита компьютерных систем | 2 | 18-05-2006 16:13 | |
Помогите решить задачи | Anton_pmg | Программирование и базы данных | 3 | 13-03-2006 09:16 |
|