Показать полную графическую версию : [решено] Удаление ярлыков на Windows Server 2008R2
Bop4yH_36
22-05-2018, 09:33
Всех приветствую! Не судите строго. Я в этом деле дилетант.
Ситуация такая есть Windows Server 2012 с большим количеством пользователей. задача удалить ярлыки с рабочего стола у всех пользователей. пробовал писать bat'ник со следующим кодом:
DEL /F /Q "%UserProfile%\Desktop\xxx.lnk"
Но он удаляет только в текущем профиле. Помогите пожалуйста.
0. открыть групповые политики
1. открыть таск шедулер.
2. создать задачу с запуском "от текущего пользователя"
3. в триггерах указать - при логине.
4. в действиях прописать вот это вот что и было указано
5. расслабиться и пить пиво
(5 пункт - обязательно, иначе никакого волшебства не получится)
Bop4yH_36
22-05-2018, 10:10
не получается, может что-то не так делаю?
Создаю задачу;
В общих: выполнять только для пользователе, вошедших в систему;
Триггеры: при входе в систему;
В действиях: bat'ник.
Задача через групповые политики (http://www.oszone.net/16360/gp-pref-9#001) создана или локально на сервере? Что-то мне подсказывает что локально.
Bop4yH_36
22-05-2018, 10:26
У меня в групповой политике нет планировщика
Elven, а зачем тут Планировщик?
Bop4yH_36
22-05-2018, 10:45
Вот
Bop4yH_36
22-05-2018, 10:46
Iska, да мне бы скрипт какой то, чтобы запустить от админа и все
Bop4yH_36, пакетный файл у Вас есть (хоть и кривоватый: Desktop — это каталог Рабочего стола по умолчанию только для новых ОС). Всё, что нужно — добавить его в групповую политику как Logon-скрипт «на пользователя».
Bop4yH_36
22-05-2018, 11:15
Iska, Можно подробнее, как это сделать?
Iska, логон скрипт может быть забит чем-то отдельным, ну и, лично для меня, просто привычнее. А так - согласен, можно и через логон скрипт. Все же таксшедулер в политике нацеленной на КОНКРЕТНЫЙ сервак - лучше, логонскрипт будет отрабатывать на любом компе домена.
Bop4yH_36, начем с простого: сервер, на котором нужно выполнить удаление, в домене?
Bop4yH_36
22-05-2018, 11:25
Elven, нет
Вот где собака порылась... Тогда все плохо, придется извращениями страдать.
for /f "delims=" %%i in ('dir /b /a:d ^| findstr /v /i ^"Default Public All Users Все пользователи^"') do del /F /Q "%%~fi\Desktop\link_name.lnk"
Я надеюсь, что перечислил все исключения, но мало ли... Короче, сохранять в 866 и запускать на свой страх и риск.
з.ы. да я знаю что All Users будет искаться отдельно как All и отдельно как Users, но еще и это дописывать мне, извините, лень.
tiss42rus
22-05-2018, 11:55
DEL /F /Q "%UserProfile%\Desktop\xxx.lnk" »
сообщить сотрудникам о том что необходимо всем запустить файл, скинь куда нить куда все дорогу знают.Можно лог добавить еще чтоб писался кем запущен. Если через политики не получается ничего сделать.
Bop4yH_36
22-05-2018, 12:01
Elven, Не работает
Все же таксшедулер в политике нацеленной на КОНКРЕТНЫЙ сервак - лучше, логонскрипт будет отрабатывать на любом компе домена. »
Последнее — совершенно верно, но легко лечится несколькими способами, начиная с банальнейшего if "%computername%" equ "GlobalServer" … в самом пакетном файле. Но я про другое — без Планировщика разве никак не обойтись?
Тогда все плохо, придется извращениями страдать. »
Зачем страдать? Использовать редактор локальной групповой политики, в остальном — всё тот же logon-скрипт «на пользователя».
Bop4yH_36, крайне содержательно.
Стесняюсь спросить, но link_name.lnk хотя бы заменен на имя того ярлыка, который нужно удалить?
Bop4yH_36
22-05-2018, 12:54
Elven, Естественно, я хоть и дилетант, но...))))
for /f "delims=" %%i in ('dir c:\users /b /a:d ^| findstr /v /i ^"Default Public All Users Все пользователи^"') do del /F /Q "%%~fi\Desktop\link_name.lnk"
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.