В меню проводника Windows существует отдельная панель, в которой отображается список избранных папок. Панель навигации со списком папок быстрого доступа (Quick Access) отображается в левой верхней части окна File Explorer. Этот удобный инструмент Windows для быстрого к избранным папками, который незаслуженно игнорируется многими пользователями и администраторами. В этой статье мы покажем как автоматизировать настройки панели быстрого доступа с помощью PowerShell и GPO.
По умолчанию в панели Quick Access отображаются стандартные папки профиля пользователя (Desktop, Downloads, Pictures, Documents). Windows сама добавляет в панель Quick Access папки, которые часто (или недавно) открывал пользователь. Также пользователь может жестко закрепить любую нужную папку в панели быстрого доступа. Для этого нужно выбрать нужную папку на компьютере или в сетевом каталоге на файловом сервере и выбрать пункт Pin to Quick Access . В этом случае у папки появляется пиктограмма скрепки.
и удалить параметр реестра HubMode со значением 1 (если этот параметр задан, проводник не показывает панель быстрого доступа). Ранее мы показывали, как скрыть стандартные папки в проводнике Windows .
В моем случае я хочу добавить определенные папки в меню быстрого доступа в зависимости от назначенных групп доступа (ролей) пользователей. Например, бухгалтерам нужно закрепить один список избранных папок, менеджерам по продажам – другой, и т.д. В групповых политиках Windows отсутствуют средства для централизованного управления Quick Access, поэтому пришлось использовать PowerShell.
Чтобы добавить одну папку в список быстрого доступа Windows, используется команда:
$quickaccess = new-object -com shell.application
$quickaccess.Namespace("C:AppFolderReport").Self.InvokeVerb("pintohome")
%AppData%MicrosoftWindowsRecentAutomaticDestinationsf01b4d95cf55d32a.automaticDestinations-ms
. Чтобы быстро очистить панель quickaccess, нужно выполнить команду: del /f /s /q /a "%AppData%MicrosoftWindowsRecentAutomaticDestinationsf01b4d95cf55d32a.automaticDestinations-ms"
Вы можете добавить в быстрый доступ локальную папку на диске или сетевую папку (по UNC пути):
$quickaccess.Namespace("\fs01publicbalance").Self.InvokeVerb("pintohome")
Или папку в профиле пользователя:
$quickaccess.Namespace("C:Users$($env:USERNAME)AppDataRoamingMyApp").Self.InvokeVerb("pintohome")
Удалить папку из быстрого доступа:
($QuickAccess.Namespace("shell:::{679f85cb-0220-4080-b29b-5540cc05aab6}").Items() | where {$_.Path -eq "C:AppFolderReport"}).InvokeVerb("unpinfromhome")
Можно удалить из Quick Access все стандартные папки библиотек, закреплённые по-умолчанию:
$quickaccess = new-object -com shell.application
$results=$QuickAccess.Namespace("shell:::{679f85cb-0220-4080-b29b-5540cc05aab6}").Items()
$DeleteDefaultItems = @("Desktop","Documents","Pictures","Videos","Рабочий стол","Документы","Изображения","Видео","Загрузки")
($results| where {$_.name -in $DeleteDefaultItems}).InvokeVerb("unpinfromhome")
Удалить все папки из Quick Access:
($quickaccess.Namespace("shell:::{679f85cb-0220-4080-b29b-5540cc05aab6}").Items() | where { $_.IsFolder -eq "True"}).InvokeVerb("unpinfromhome")
Следующий кусок кода добавляет в Quick Access папки только тогда, когда пользователь входит в определенную группу AD:
$usergroups=(New-Object System.DirectoryServices.DirectorySearcher("(&(objectCategory=User)(samAccountName=$($env:username)))")).FindOne().GetDirectoryEntry().memberOf_x000D_if ($usergroups.Contains('CN=SaleManagers,OU=groups,OU=MSK,DC=remontka,DC=ru'))_x000D_ {_x000D_ $AddItems = @(_x000D_ [pscustomobject]@{Name=Sales;Path="\remontka.comdfssales "}_x000D_ [pscustomobject]@{Name='Scans';Path="\remontka.comdfsScans"}_x000D_ [pscustomobject]@{Name='Test1';Path="$env:USERPROFILEDownloads"}_x000D_ )_x000D_ ForEach ($Item in $AddItems)_x000D_ { _x000D_ if (($Item.Name -notin $results.Name) -and (Test-Path -Path $Item.path)) {_x000D_ $QuickAccess.Namespace($Item.path).Self.InvokeVerb("pintohome")_x000D_ }_x000D_ }_x000D_ }_x000D_
Если пользователь состоит в группе SaleManagers, этот cкрипт проверит, есть ли в списке QuickAccess пользователя элементы из массива $AddItems
. Если такой папки нет в быстром доступе, скрипт проверить доступность указанного пути и добавит папку в избранное.
Вы можете добавить в этот скрипт еще несколько проверок наличия групп доступа у пользователя. В результате PowerShell скрипт будет добавлять папки в список быстрого доступа пользователя в зависимости от назначенных ему групп AD.
Такой PowerShell скрипт нужно сохранить на контроллер домена AD в папку \remontka.comNETLOGON
(это позволит игнорировать настройки политики запуска скриптов PowerShell Execution Policy ) и запускать как логон скрипт при входе пользователя через групповую политику (подробнее о запуске PowerShell скриптов через GPO ).
Если говорить о том, какие лучшие дистрибутивы Linux мы знаем, то этот список может быть…
Хотя Ubuntu и поставляется со встроенным обозревателем Firefox многие пользователи считают что это не самая…
Что такое Remmina? Remmina — это совершенно бесплатный и свободный клиент так называемого удаленного рабочего…
Как мы знаем, Ubuntu это самая популярная сборка из систем на базе ядра Linux. У…
Выбор ноутбука для каждого пользователя это довольно кропотливый процесс. Люди стараются подобрать ноутбук который будет…
Если вы решили ознакомиться с операционной системой Linux более детально и задались вопросом как установить…