|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Рекурсивный обход папки |
|
CMD/BAT - [решено] Рекурсивный обход папки
|
Новый участник Сообщения: 5 |
Профиль | Отправить PM | Цитировать дана папка,в которой вложены некоторые папки и файлы.
задание: 1. рекурсивно обойти папку. 2. вывести сообщение о кол-ве вложенных файлов 3. рекурсивно удалить папку,где нет файлов |
|
Отправлено: 00:49, 27-12-2010 |
Сообщения: 53441
|
Профиль | Отправить PM | Цитировать Ван Рег, как-то так?
@Echo Off SetLocal EnableExtensions Call :CheckFileCount ваша_папка_без_слеша_в_конце Exit /B :CheckFileCount For /F "Delims=" %%I In ('Dir /A-D /B /S "%~1\" 2^>nul ^| Find /V /C ""') Do Set FileCount=%%I Echo %FileCount% файлов в папке %~1 If %FileCount%==0 ( Echo Удаление %~1 RD /S /Q "%~1" ) Else ( For /F "Delims=" %%I In ('Dir /AD /B "%~1\" 2^>nul') Do Call :CheckFileCount "%~1\%%~I" ) GoTo :EOF |
Отправлено: 10:15, 27-12-2010 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 5
|
Профиль | Отправить PM | Цитировать Разве это CMD?мне в нем нужно было.Но все равно большое спасибо))
|
Отправлено: 00:14, 28-12-2010 | #3 |
Сообщения: 53441
|
Профиль | Отправить PM | Цитировать Цитата Ван Рег:
|
|
Отправлено: 07:47, 28-12-2010 | #4 |
Новый участник Сообщения: 5
|
Профиль | Отправить PM | Цитировать эм...тупанул...спасибо большое)))
|
|
Отправлено: 01:13, 29-12-2010 | #5 |
Ветеран Сообщения: 842
|
Профиль | Отправить PM | Цитировать Нужен рекурсивный поиск файлов и их удаление. И всё должно быть максимально просто и желательно в одну строку и даже без пакетного файла.
********************************************************************************* Найти файлы "%ProgramFiles%\Videodeluxe\{во всех подпапках}\_msi_keyfile_*" && удалить их. ********************************************************************************* Не лишним будет attrib -R - H -S поставить, хотя я это и сам умею Любое решение подойдёт, но просто хотелось бы получше и понадёжнее, можно и батником... я просто люблю всё в одну комманду набирать Если на словах, то я не знаю как в cmd маску типа \*\*\* организовать, и ещё прочитав комманду find меня удивило то что она ищет не имена файлов, а строки внутри, что меня поставило в тупик, как будто это grep Маски наверх типа ..\..\ под Майкрософт работают, а вот вниз *\*\.. не знаю что делать. |
------- Последний раз редактировалось semiono, 04-11-2011 в 23:26. Отправлено: 23:17, 04-11-2011 | #6 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата del /?:
@echo off setlocal enableextensions enabledelayedexpansion for /r "%ProgramFiles%\Videodeluxe" %%i in ("_msi_keyfile_*") do ( echo %%i ) endlocal exit /b 0 Цитата semiono:
|
||
Отправлено: 23:50, 04-11-2011 | #7 |
Ветеран Сообщения: 842
|
Профиль | Отправить PM | Цитировать |
------- Отправлено: 01:03, 05-11-2011 | #8 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Утилиты - Netblock обход | skelet2394 | Защита компьютерных систем | 0 | 20-09-2010 23:54 | |
рекурсивный спуск в таблицу | Surround | Вебмастеру | 5 | 01-06-2010 12:27 | |
[решено] Рекурсивный поиск файла | cra5h_ | AutoIt | 47 | 06-02-2010 11:38 | |
Обход Айпи | Military | Хочу все знать | 5 | 29-09-2009 23:36 | |
Прочее - обход роутера | SoA | Сетевые технологии | 5 | 03-01-2009 15:17 |
|