CMD/BAT - [решено] Очистка папки %temp% у всех пользователей в системе.

Аватара пользователя
noxville

CMD/BAT - [решено] Очистка папки %temp% у всех пользователей в системе.

Сообщение noxville »

Доброе время суток!

Есть малюсенький батник, который чистит при запуске его временные папки:

%SystemDrive%

cd "%temp%"

del /f /s /q *.*

cd "%userprofile%\Local Settings\Temporary Internet Files"

del /f /s /q *.*



... но он чистит только временные папки того пользователя от которого запущен батник.



Вопрос с следующем: батник в скором будущем будет отрабатываться автоматически при выключении компа (после логофа пользователя), соответственно не будет чиститься никакой %userprofile%, так как уже будет запущен от SYSTEM.

Что сделать для того чтоб батник чистил все временные папки пользователей в "Documents & Settings" при выключении компа?
Аватара пользователя
noxville

Re: CMD/BAT - [решено] Очистка папки %temp% у всех пользователей в системе.

Сообщение noxville »

Vadikan, вопрос похожий как мне кажется, но не тот же самый.

В моем случае не известны имена пользователей, их много.

И все равно если батник будет отрабатываться после логоффа пользователя, так что чистить он будет только то что находится в %windir%\temp, а не во всех учетках.
Аватара пользователя
Vadikan

Re: CMD/BAT - [решено] Очистка папки %temp% у всех пользователей в системе.

Сообщение Vadikan »

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




Цитата:



Сценарии (вход/выход из системы) (Scripts (Logon/Logoff)). Это расширение, расположенное в узле дерева консоли редактора объектов групповой политики «Конфигурация пользователя\Конфигурация Windows», используется для указания сценариев, выполняемых при входе и выходе пользователя из системы. Эти сценарии запускаются с правами пользователя, а не администратора.



http://technet.microsoft.com/ru-ru/l...91(WS.10).aspx




Теперь объясните, почему у вас скрипты запускаются от имени SYSTEM?
Аватара пользователя
noxville

Re: CMD/BAT - [решено] Очистка папки %temp% у всех пользователей в системе.

Сообщение noxville »

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

Но мне то надо чтоб батник отрабатывался при выключении компа, а не при завершении сеанса.



Т.е. к примеру включили ПК, система дошла до "Нажмите ctrl+alt+del" , нажимаем, и вместо того чтоб логиниться - выбираем завершение работы, выключить/перезагрузить компьютер. Чтоб при таких условиях выполнялся батник.
Аватара пользователя
Petya V4sechkin

Re: CMD/BAT - [решено] Очистка папки %temp% у всех пользователей в системе.

Сообщение Petya V4sechkin »

noxville, как-то так?



Код:

Код: Выделить всё

SetLocal EnableExtensions
For /F "Tokens=2*" %%I In ('Reg Query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" /V ProfilesDirectory') Do Set Profiles=%%J
Call Set Profiles=%Profiles%
For /F "Delims=" %%I In ('Dir /B /AD-S-H "%Profiles%" ^| FindStr /V /B /I /C:"All Users"') Do (
  Del /F /S /Q "%Profiles%\%%I\Local Settings\Temp\*.*"
  Del /F /S /Q "%Profiles%\%%I\Local Settings\Temporary Internet Files\*.*"
  Del /F /S /Q "%Profiles%\%%I\AppData\Local\Temp\*.*"
  Del /F /S /Q "%Profiles%\%%I\AppData\Local\Microsoft\Windows\Temporary Internet Files\*.*"
)
Аватара пользователя
Vadikan

Re: CMD/BAT - [решено] Очистка папки %temp% у всех пользователей в системе.

Сообщение Vadikan »

Цитата noxville:



мне то надо чтоб батник отрабатывался при выключении компа, а не при завершении сеанса.
CMD/BAT - [решено] Очистка папки %temp% у всех пользователей в системе.




Сорри, я невнимательно прочел условие задачи.



Перебор профилей решался еще несколько лет назад тут
http://www.oszone.net/6167
Аватара пользователя
Vadikan

Re: CMD/BAT - [решено] Очистка папки %temp% у всех пользователей в системе.

Сообщение Vadikan »

noxville,



С незапамятных времён (этак win98 и win2000) решил для себя данный вопрос раз и навсегда. Использую утилиту
CLEARTEMP.EXE
(кем написанную не знаю, давно это было), работает она без укоризненно. Прописываешь её в автозагрузке %ALLUSERSPROFILE% или же в реестре HKLM и всё... (кстати очищает она сугубо переменные пути %TEMP% системные и пользовательские). А для "Temporary Internet Files" существует соответствующий параметр в параметрах GPО Изображение
Вложения
CLEARTEMP.rar
(190.76 КБ) 0 скачиваний
CLEARTEMP.rar
(190.76 КБ) 0 скачиваний
Аватара пользователя
Vadikan

Re: CMD/BAT - [решено] Очистка папки %temp% у всех пользователей в системе.

Сообщение Vadikan »

Цитата Anton04:



Прописываешь её в автозагрузке %ALLUSERSPROFILE% или же в реестре HKLM и всё... (кстати очищает она сугубо переменные пути %TEMP% системные и пользовательские)
CMD/BAT - [решено] Очистка папки %temp% у всех пользователей в системе.




А у ограниченного пользователя разве есть права на очистку временных папок в системных каталогах?
Ответить

Вернуться в «Скриптовые языки администрирования Windows»