Показать полную графическую версию : [решено] удаление всех файлов и подпапок в нескольких папках
alexandri
08-01-2010, 23:50
Ребят помогите плиз написать cmd-файл, чтобы он удалял всё что находится ну например в
%windir%\Temp,
%userprofile%\Local Settings\Temp,
%userprofile%\Local Settings\Temporary Internet Files
%userprofile%Cookies
А то я на диске д: создал кмд файл в нём написал: cd %windir%\temp del /q *, запустил его и на диске д: лишился всех файлов, слава богу, что не всех папок))), файлы то я восстановил, но нафиг мне такое надо))
alexandri,
Насколько я понял тебе нужно, чтоб очищалась папка с временными файлами винды? Если так, то есть прекрасная альтернатива в виде небольшой утилиты CLEARTEMP.EXE (пользуюсь с незапамятных времён) и помещения соответствующего ярлыка в автозагрузку или реестр. ;)
А для очищения временных файлов IE есть замечательная галка в самом IE, под названием "Удалять все все файлы из папки временных файлов Интернета при закрытии обозревателя" (или как комбинация с программой CLEARTEMP это перемещение Temporary Internet Files в %temp%).
Зачем же изобретать велосипед!? ;)
alexandri
09-01-2010, 00:20
Э брат, эт конечно всё хорошо, но: во первых это всё нужно сделать на 20 компах, поэтому как-то влом становится на каждом всё повторять, а во вторых это будет только начало скрипта, а на счёт перемещения темпорарей в %temp% эт мне нравится )))
alexandri, можешь посмотреть статью Удаление ненужных файлов и папок после установки ОС (http://oszone.net/6159) , вот например
%windir%\Temp,
%userprofile%\Local Settings\Temp,
%userprofile%\Local Settings\Temporary Internet Files
%userprofile%Cookies »
пишеш в cmd-файл так :
cmdow @ /HID
@echo off
RD /S /Q "%windir%\Temp"
RD /S /Q "%userprofile%\Local Settings\Temp"
RD /S /Q "%userprofile%\Local Settings\Temporary Internet Files"
RD /S /Q "%%userprofile%\Cookies"
EXIT
если что будет непонятно , то можешь еще посмотреть Примеры (http://oszone.net/2765) (пример файл cleanup.cmd )
пишеш в cmd-файл так »
во избежание удаления очищаемого каталога, перед каждым RD нужно делать этот каталог текущим (CD или PUSHD)
во избежание удаления очищаемого каталога, перед каждым RD нужно делать этот каталог текущим (CD или PUSHD) »
Извините , я просто написал те команды которые мне извесны , а про CD или PUSHD я не знал , спасибо :)
El Sanchez
09-01-2010, 16:12
А для очищения временных файлов IE есть замечательная галка в самом IE, под названием "Удалять все все файлы из папки временных файлов Интернета при закрытии обозревателя" (или как комбинация с программой CLEARTEMP это перемещение Temporary Internet Files в %temp%) »
Для удаления временных файлов Интернет, cookies, истории можно применить команду
RUNDLL32.EXE InetCpl.cpl,ClearMyTracksByProcess 255
Э брат, эт конечно всё хорошо, но: во первых это всё нужно сделать на 20 компах,...»
Об этом речи не шло. Каков вопрос таков ответ ;)
поэтому как-то влом становится на каждом всё повторять, а во вторых это будет только начало скрипта, а на счёт перемещения темпорарей в %temp% эт мне нравится ))) »
AD есть? Если да, то так проделать всё через GPO раз плюнуть, а уж каким способом это уже дело десятое, хоть через реестр, хоть с помощью запуска скрипта, хоть через запуск софтины с командами...
alexandri
09-01-2010, 23:08
а что такое - cmdow @ /HID поясните пожалуйста
RUNDLL32.EXE InetCpl.cpl,ClearMyTracksByProcess 255 /s »
Я так понял вы шарите как работать с rundll32.exe, я тоже хочу :) направьте меня пожалуйста туда где это мона почитать
Здесь inetcpl это оснастка свойства оборзевателя, а ClearMyTracksByProcess 255 /s это что такое?
а что такое - cmdow @ /HID поясните пожалуйста »
Вызов утилиты для скрытия окна консоли.как работать с rundll32.exe, я тоже хочу направьте меня пожалуйста туда где это мона почитать »
На заметку. Перечень системных команд. (http://forum.oszone.net/thread-109006.html)
alexandri
10-01-2010, 01:22
а ClearMyTracksByProcess это переменная или команда? 255 что такое? и параметр /s
alexandri
10-01-2010, 11:10
а мой сценарий (если его можно так назвать :)) не сработал из-за того, что не заключил путь в кавычки?
я пробовал в кмд ручками набирал то же самое работало
alexandri
10-01-2010, 11:28
amel27, напиши пожалуйста одну строчку кода для наглядного примера, чтоб я увидел куда нужно вставлять cd. А то исходя из ваших рассуждений прям напрашивается вывод, что вначале пишишь cd потом rd а потом путь, как-то нелогично мне кажется :dont-know
alexandri, уже было: CMD/BAT - [решено] Батник на очистку TEMP (http://forum.oszone.net/showthread.php?t=158094)
El Sanchez
10-01-2010, 15:41
а ClearMyTracksByProcess это переменная или команда? 255 что такое? и параметр /s »
ClearMyTracksByProcess - имя функции компоненты inetcpl.cpl
255 - аргумент функции (удалить всю историю).
Подробности тут (http://blogs.techrepublic.com.com/window-on-windows/?p=574)
/s - это я перепутал с параметром тихого режима команды regsvr32, нет такого параметра :sorry:
Всем привет!
Помогите пожалуйста с bat-файлом.
У меня батник копирует файлы с одной папки "Work" в папку "Archive", без какой либо проверки, т.е. при совпадении имени файла он заменяет файл.
pushd "%Work%\"
FOR /f "tokens=*" %%a IN ('dir /b /a-d') DO (if %%~za LSS 10000 (copy "%%~fa" "%Archive%\"))
Как сделать проверку, если копируемый файл уже существует в папке Archive, то имя этого файла записывается в текстовый документ. А сам файл в любом случае должен заменяться.
Буду очень признателен.
alexandri
11-01-2010, 23:09
всем спасибки всё заработало. Только команда cd не работает, применил pushd - с ней всё в поряде.
Вот что у меня получилось :
pushd %windir%\temp
RD /s /q %windir%\temp
pushd %temp%
RD /s /q %temp%
pushd "%userprofile%\local settings\Temporary Internet Files"
RD /s /q "%userprofile%\local settings\Temporary Internet Files"
pushd %userprofile%\cookies
RD /s /q %userprofile%\cookies
exit
RD /s /q %temp% »
В PUSHD/CD путь брать в кавычки не обязательно, а вот в RD очень желательно
команда cd не работает »
попробуй с ключом "CD /D "
Как сделать проверку, если копируемый файл уже существует в папке Archive, то имя этого файла записывается в текстовый документ. А сам файл в любом случае должен заменяться. »
где-то так:
pushd "%Work%\"
For /F "Delims=" %%a In ('DIR /B/A-D') Do (
If Exist "%Archive%\%%~nxa" Echo %%a >>%Log%
If %%~za LSS 10000 COPY /Y "%%~fa" "%Archive%\"
)
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.