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

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

Закрытая тема
Настройки темы
CMD/BAT - [решено] Удаление по маске, кроме папки исключения.

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


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

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


Всем привет, есть такой вот батник:
@echo off
For /R C:\ %%i in (*.mp3,*.jpg,*.jpeg,*.avi,*.mov) Do (
Del /q "%%i")

Подскажите как можно сделать так что бы этот батник работал но не удалял ничего в папке C:\Shared
Если через бат такое нельзя, то если не затруднит выложите на другом языке, подходящем для logon скрипта win 2k3.

Отправлено: 13:50, 12-07-2011

 

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


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

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


Вдруг вот при выполнении появилось это
@echo off
for /d %%a in (C:\*) do if /i not "%%a"=="C:\Windows" "C:\Program Files" (del/s/q %%~sa\*.mp3 %%~sa\*.jpg %%~sa\*.jpeg %%~sa\*.avi %%~sa\*.mov)

неожиданное появление: %%a.

del /q C:\*.mp3 C:\*.jpg C:\*.jpeg C:\*.avi C:\*.mov

Хотя при тестах все удалялось, что на тестовой, что на рабочей машине.

Последний раз редактировалось serjei, 03-08-2011 в 12:46.


Отправлено: 12:13, 03-08-2011 | #11



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

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


Googler


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

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


Цитата serjei:
for /d %%a in (C:\*) do if /i not "%%a"=="C:\Windows" "C:\Program Files" »
гм.. эт конечно неправильно, но в моём коде нет такого...
способ получения полного лога: http://forum.oszone.net/post-1675364-18.html

Отправлено: 13:01, 03-08-2011 | #12


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


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

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


@echo off
for /d %%a in (C:\*) do if /i not "%%a"=="C:\Windows" "C:\Program Files" (del/s/q %%~sa\*.mp3 %%~sa\*.jpg %%~sa\*.jpeg %%~sa\*.avi %%~sa\*.mov)
del /q C:\*.mp3 C:\*.jpg C:\*.jpeg C:\*.avi C:\*.mov

for /d %%a in ("D:\*") do if /i not "%%a"=="D:\Shared" (del/s/q "%%~sa\*.mp3" "%%~sa\*.jpg" "%%~sa\*.jpeg" "%%~sa\*.avi" "%%~sa\*.mov")
del /q D:\*.mp3 D:\*.jpg D:\*.jpeg D:\*.avi D:\*.mov

for /d %%a in ("E:\*") do if /i not "%%a"=="E:\Shared" (del/s/q "%%~sa\*.mp3" "%%~sa\*.jpg" "%%~sa\*.jpeg" "%%~sa\*.avi" "%%~sa\*.mov")
del /q E:\*.mp3 E:\*.jpg E:\*.jpeg E:\*.avi E:\*.mov


Это батник который запускаю.
Лог:
""C:\Program Files"" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
""C:\Program Files"" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
""C:\Program Files"" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
""C:\Program Files"" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
Не удается найти C:\*.mp3
Не удается найти D:\FM42XX~1.24\*.mp3
Не удается найти D:\Manuals\*.mp3
Не удается найти D:\Share\*.mp3
Не удается найти D:\Virtual\*.mp3
Удален файл - D:\6239~1\Акт титул.jpg
Удален файл - D:\6239~1\стр.1.jpg
Удален файл - D:\6239~1\стр.2.jpg
Не удается найти D:\*.mp3

я в общем совсем запутался))

Отправлено: 13:48, 03-08-2011 | #13


Googler


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

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


serjei, может так?
Код: Выделить весь код
@echo off
for /d %%a in (C:\* D:\* E:\*) do (
if /i not "%%a"=="C:\Windows" if /i not "%%a"=="C:\Program Files" if /i not "%%a"=="D:\Shared" if /i not "%%a"=="E:\Shared" (
del/s/q %%~sa\*.mp3 %%~sa\*.jpg %%~sa\*.jpeg %%~sa\*.avi %%~sa\*.mov
))
P.S. используйте для кода/содержимого файлов и логов тег CODE... плз
Это сообщение посчитали полезным следующие участники:

Отправлено: 14:29, 03-08-2011 | #14


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


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

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


спс, отпишусь по результатам.

Цитата:
P.S. используйте для кода/содержимого файлов и логов тег CODE... плз

Я в програмированнии полный ноль)) если можно то опишите подробней плз данное действие.

Отправлено: 05:18, 04-08-2011 | #15


Аватара для ferget

Разный


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

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



Отправлено: 08:11, 04-08-2011 | #16


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


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

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


Ах вон про что)) я то думал про другое.

Отправлено: 09:40, 04-08-2011 | #17


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


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

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


А возможно ли исключить USB устройства из сканирования? даже если флешка имеет букву диска D или E.

Отправлено: 16:23, 05-08-2011 | #18


Старожил


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

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


пожалуйста, напишите мне батник который бы
1. удалял все папки (вместе с их содержимым) внутри C:\windows\ у которых имя начинается с $NtUninstallKB и чтобы не было никаких запросов.
т.е. мне надо что-то типа
Код: Выделить весь код
rd c:\windows\$ntuninstallkb* /s /q
но только в cmd rd не поддерживает * (в отличие от del).

2. удалял бы все папки внутри c:\WINDOWS\$hf_mig$\ но не её саму - на случай, если винда не догадается в след. раз её сначала создать, а также ради того, чтобы узнать как это наконец делается, ведь
Код: Выделить весь код
rd c:\windows\$hf_mig$\* /s /q
нельзя использовать по вышеописанной причине.

-------
Windows 7SP1x64 Максимальная RU


Последний раз редактировалось iDrug, 04-02-2012 в 22:48.


Отправлено: 22:08, 04-02-2012 | #19


Старожил


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

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


1.
Код: Выделить весь код
For /F "delims=" %%D In ('Dir "%WinDir%\$ntuninstallkb*" /B /A:D') Do (RD /S /Q "%WinDir%\%%D")
2.
Код: Выделить весь код
For /F "delims=" %%D In ('Dir "%WinDir%\$hf_mig$\" /B /A:D') Do (RD /S /Q "%WinDir%\$hf_mig$\%%D")
Это сообщение посчитали полезным следующие участники:

Отправлено: 22:43, 04-02-2012 | #20



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Удалить папки по маске run0ut Скриптовые языки администрирования Windows 9 21-03-2017 01:27
CMD/BAT - [решено] Перемещение и удаление файлов по условию и маске VitHAK Скриптовые языки администрирования Windows 14 23-12-2013 08:57
CMD/BAT - [решено] Удаление файлов по маске во времменых папках IE Shpil83 Скриптовые языки администрирования Windows 16 25-05-2012 15:06
CMD/BAT - [решено] удаление файлов по маске имени hlpain Скриптовые языки администрирования Windows 4 02-09-2011 16:11
CMD/BAT - [решено] Перемещение (удаление) директорий по маске ven00m Скриптовые языки администрирования Windows 17 15-11-2009 10:24




 
Переход