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

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

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

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


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

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


Как удалить все папки на флешке, кроме папок с названием длиной 14 цифр и которые имеют хотя бы 1 файл с расширением *.dbf ?

Отправлено: 11:52, 13-11-2010

 

Googler


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

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


так как ничего не сказано про подкаталоги, ищем только папки в корне диска, а файл в корне папки:
Код: Выделить весь код
@Echo Off
Set DRV=H

For /F "Delims=" %%a In ('Dir /B/AD %DRV%:\*^|FindStr /VXRC:".............."') Do Echo RD /S/Q "%DRV%:\%%~sna"
For /F "Delims=" %%a In ('Dir /B/AD %DRV%:\*') Do If Not Exist "%DRV%:\%%a\*.dbf" Echo RD /S/Q "%DRV%:\%%~sna"
P.S. для боевого запуска убрать 2 команды Echo

Последний раз редактировалось amel27, 15-11-2010 в 15:37. Причина: уточнение

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

Отправлено: 12:28, 13-11-2010 | #2



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

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


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


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

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


amel27, А как удалить из корня диска Н:\ все файлы кроме *.dbf ? СПАСИБО !!!

PHP код: Выделить весь код

del //%~d0*.* 



Отправлено: 14:43, 13-11-2010 | #3


Аватара для gora

Ушёл из жизни


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

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


Цитата yaoleg2:
А как удалить из корня диска Н:\ все файлы кроме *.dbf ? »
допишите еще одну строку:
Код: Выделить весь код
For /F "Delims=" %%a In ('Dir /B/A-D %DRV%:\') Do If Not "%%~xa"==".dbf" Echo Del /F/Q "%DRV%:\%%a"
Про Echo amel27 написал.

Последний раз редактировалось gora, 13-11-2010 в 17:03.

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

Отправлено: 15:31, 13-11-2010 | #4


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


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

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


gora, У меня удаляются все файлы, а должны удалятся все кроме файлов с расширением *.dbf.

Отправлено: 17:02, 13-11-2010 | #5


Аватара для gora

Ушёл из жизни


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

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


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

Отправлено: 17:04, 13-11-2010 | #6


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


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

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


СПАСИБО amel27, gora, все получилось!!!

Отправлено: 17:13, 13-11-2010 | #7


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


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

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


Все папки удаляет как надо, но возникла проблема с удалением папок в названии которых есть украинская буква "і". Как можно решить эту проблему?

Отправлено: 14:44, 15-11-2010 | #8


Googler


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

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


yaoleg2, подправил, проверяйте
Это сообщение посчитали полезным следующие участники:

Отправлено: 15:39, 15-11-2010 | #9


Аватара для vxor

Старожил


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

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


Код: Выделить весь код
For /F "Delims=" %%a In ('Dir /B/AD %DRV%:\*^|FindStr /VXRC:".............."') Do Echo RD /S/Q "%DRV%:\%%~sna"
Все прекрасно работает, кроме папки
Код: Выделить весь код
c:\Documents and Settings\All Users\Главное меню\Программы\ABBYY FineReader 8.0\
Команды:
Код: Выделить весь код
For /F "Delims=" %%a In ('Dir /B/AD "%allusersprofile%\Главное меню\Программы\*"^|FindStr /VXRC:"Автозагрузка"^|FindStr /VXRC:"Администрирование"^|FindStr /VXRC:"Игры"^|FindStr /VXRC:"Стандартные"') Do RD /S/Q "%allusersprofile%\Главное меню\Программы\%%~sna"
For /F "Delims=" %%a In ('Dir /B/AD "%userprofile%\Главное меню\Программы\*"^|FindStr /VXRC:"Автозагрузка"^|FindStr /VXRC:"Стандартные"') Do RD /S/Q "%userprofile%\Главное меню\Программы\%%~sna"
Ее не удаляет.

В чем может быть проблема? Притом она просто удаляется через команду:
Код: Выделить весь код
rd /S/Q "c:\Documents and Settings\All Users\Главное меню\Программы\ABBYY FineReader 8.0\"

Отправлено: 03:49, 26-03-2011 | #10



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Как удалить из папки все файлы определенного размера? Alex_smo Скриптовые языки администрирования Windows 6 29-07-2014 19:50
Интерфейс - [решено] Папка с названием "", как удалить? Clarc Microsoft Windows 2000/XP 7 15-11-2010 17:37
CMD/BAT - [решено] Удалить все файлы из папки кроме нужных Sirimika Скриптовые языки администрирования Windows 16 12-11-2010 10:33
CMD/BAT - [решено] Как в CMD задать названию папки неопределенную последовательность символов? Rico Скриптовые языки администрирования Windows 4 25-01-2010 08:16
Разное - [решено] Как запретить все приложения кроме некоторых? LookA Microsoft Windows 2000/XP 4 05-10-2007 08:23




 
Переход