1. История
cat (Get-PSReadlineOption).HistorySavePath
Показаны сообщения с ярлыком powershell. Показать все сообщения
Показаны сообщения с ярлыком powershell. Показать все сообщения
среда, 22 января 2020 г.
среда, 24 апреля 2019 г.
Powershell AD
1. Кто в группе учетная запись активна
> Get-ADGroupMember -Identity "nameGroup" -Recursive | ForEach-Object {Get-ADUser -Identity $_.distinguishedName -Properties *} | Where-Object {$_.Enabled -like “true”} | ft SamAccountName,name -AutoSize
или запись короче ForEach-Object заменено на %
> Get-ADGroupMember -Identity "nameGroup" -Recursive | ForEach-Object {Get-ADUser -Identity $_.distinguishedName -Properties *} | Where-Object {$_.Enabled -like “true”} | ft SamAccountName,name -AutoSize
> Get-ADGroupMember -Identity "nameGroup" -Recursive | ForEach-Object {Get-ADUser -Identity $_.distinguishedName -Properties *} | Where-Object {$_.Enabled -like “true”} | ft SamAccountName,name -AutoSize
или запись короче ForEach-Object заменено на %
> Get-ADGroupMember -Identity "nameGroup" -Recursive | ForEach-Object {Get-ADUser -Identity $_.distinguishedName -Properties *} | Where-Object {$_.Enabled -like “true”} | ft SamAccountName,name -AutoSize
Ярлыки:
AD,
powershell
пятница, 9 февраля 2018 г.
RDP powershell
Полезные команды powershell для RDP
1. Вывод хостов и их статус в коллекции
Get-RDSessionHost -ConnectionBroker "name_broker.local" -CollectionName "name_collection"
2. Список сессий во всех коллекциях
Get-RDUserSession -ConnectionBroker "name_broker.local"
3. Поиск на каком rds сессия пользователя
Get-RDUserSession -ConnectionBroker "name_broker.local" | Where-Object {$_.Username -like 'login'}
4. Разрешить создавать новые сессии на rds
Set-RDSessionHost -SessionHost "name_rds_server.local" -NewConnectionAllowed Yes -ConnectionBroker "name_broker.local"
5. Запретить создавать новые сессии на rds
Set-RDSessionHost -SessionHost "name_rds_server.local" -NewConnectionAllowed No -ConnectionBroker "name_broker.local"
6. Список все серверов в ферме с их ролями
Get-RDServer -ConnectionBroker name_broker.local
7. Добавить сервер как узел сеансов
Add-RDServer -Server "name_rds_server.local" -Role "RDS-RD-SERVER" -ConnectionBroker "name_broker.local"
8. Добавить сервер в коллекцию
Add-RDSessionHost -SessionHost "name_rds_server.local" -CollectionName "name_collection" -ConnectionBroker "name_broker.local"
9. Вывод, опубликованных приложений в коллекции
Get-RDRemoteApp -ConnectionBroker "name_broker.local" -CollectionName "name_collection"
10. Вывод, прав на коллекцию
Get-RDSessionCollectionConfiguration -CollectionName "name_collection" -UserGroup -ConnectionBroker "name_broker.local"
11. Вывод всех серверов rds во всех коллекциях
Get-RDSessionCollection -ConnectionBroker "name_broker.local" | Select-Object -Property collectionname | ForEach-Object -Process { Get-RDSessionHost -ConnectionBroker "name_broker.local" -CollectionName $_.collectionname | Sort-Object -Property SessionHost}
12. Добавить права на коллекции группе
Set-RDSessionCollectionConfiguration -CollectionName "name_collection" -ConnectionBroker "name_broker.local" -UserGroup "domain\name_group"
1. Вывод хостов и их статус в коллекции
Get-RDSessionHost -ConnectionBroker "name_broker.local" -CollectionName "name_collection"
2. Список сессий во всех коллекциях
Get-RDUserSession -ConnectionBroker "name_broker.local"
3. Поиск на каком rds сессия пользователя
Get-RDUserSession -ConnectionBroker "name_broker.local" | Where-Object {$_.Username -like 'login'}
4. Разрешить создавать новые сессии на rds
Set-RDSessionHost -SessionHost "name_rds_server.local" -NewConnectionAllowed Yes -ConnectionBroker "name_broker.local"
5. Запретить создавать новые сессии на rds
Set-RDSessionHost -SessionHost "name_rds_server.local" -NewConnectionAllowed No -ConnectionBroker "name_broker.local"
6. Список все серверов в ферме с их ролями
Get-RDServer -ConnectionBroker name_broker.local
7. Добавить сервер как узел сеансов
Add-RDServer -Server "name_rds_server.local" -Role "RDS-RD-SERVER" -ConnectionBroker "name_broker.local"
8. Добавить сервер в коллекцию
Add-RDSessionHost -SessionHost "name_rds_server.local" -CollectionName "name_collection" -ConnectionBroker "name_broker.local"
9. Вывод, опубликованных приложений в коллекции
Get-RDRemoteApp -ConnectionBroker "name_broker.local" -CollectionName "name_collection"
10. Вывод, прав на коллекцию
Get-RDSessionCollectionConfiguration -CollectionName "name_collection" -UserGroup -ConnectionBroker "name_broker.local"
11. Вывод всех серверов rds во всех коллекциях
Get-RDSessionCollection -ConnectionBroker "name_broker.local" | Select-Object -Property collectionname | ForEach-Object -Process { Get-RDSessionHost -ConnectionBroker "name_broker.local" -CollectionName $_.collectionname | Sort-Object -Property SessionHost}
12. Добавить права на коллекции группе
Set-RDSessionCollectionConfiguration -CollectionName "name_collection" -ConnectionBroker "name_broker.local" -UserGroup "domain\name_group"
Ярлыки:
powershell,
RDP,
RDS
вторник, 8 августа 2017 г.
Powershell полный вывод
Иногда | ft -autosize не помогает и -Wrap также не помогает увидеть весь вывод, помогает
Start-Transcript
$FormatEnumerationLimit=-1
далее нужные команды, после того, как все выполнено
Stop-Transcript
http://windowstechpro.com/how-to-start-transcript-to-record-the-powershell-session/
Ярлыки:
powershell,
Windows
пятница, 25 сентября 2015 г.
Powershell. Завершение процесса у пользователя который использует больше ОЗУ
Дано: сервер терминалов.
Задача: убивать процессы firefox, если он использует больше заданного значения RAM. Пользователю вывести сообщение.
Решение:
создаем скрипт kill-firefox.ps1
где
firefox.exe - имя процесса
600000000 - объем RAM, больше которого нужно убивать.
На сервере добавляем этот скрипт в Планировщик заданий, запуск например раз в 5 минут.
Также можно добавить проверку количества свободного RAM на сервере, чтоб скрипт отрабатывал только при нехватке RAM на сервере.
Задача: убивать процессы firefox, если он использует больше заданного значения RAM. Пользователю вывести сообщение.
Решение:
создаем скрипт kill-firefox.ps1
get-wmiobject win32_process -filter "name='firefox.exe'" | foreach-object {if ( $_.WorkingSetSize -gt 600000000 ) { msg $_.getowner().User "Здесь сообщение"; kill -id $_.ProcessId -force }}
где
firefox.exe - имя процесса
600000000 - объем RAM, больше которого нужно убивать.
На сервере добавляем этот скрипт в Планировщик заданий, запуск например раз в 5 минут.
Также можно добавить проверку количества свободного RAM на сервере, чтоб скрипт отрабатывал только при нехватке RAM на сервере.
Ярлыки:
powershell,
RDP,
RDS
понедельник, 21 сентября 2015 г.
четверг, 21 июня 2012 г.
IIS + Powershell
http://blogs.msdn.com/b/carlosag/archive/2008/02/11/microsoftwebadministrationinpowershell.aspx
http://stackoverflow.com/questions/6186888/loop-through-all-bindings-configured-in-iis-with-powershell
http://stackoverflow.com/questions/6186888/loop-through-all-bindings-configured-in-iis-with-powershell
Ярлыки:
IIS,
powershell,
Windows
пятница, 27 января 2012 г.
Powershell + IIS
Управление IIS из PowerShell
Установить Windows PowerShell Snap-In.
http://www.iis.net/download/powershell
Запустить PowerShell
Подключить модуль
Import-Module WebAdministration
Выдает ошибку:
Import-Module : The following error occurred while loading the extended type data file:
Microsoft.PowerShell, C:\Windows\system32\WindowsPowerShell\v1.0\Modules\WebAdministration\iisprovider.types.ps1xml : File skipped because it was already present from "Microsoft.PowerShell".
Можно сделать так:
Set-ExecutionPolicy RemoteSigned
Закрыть powershell и снова открыть.
После этого подключаем модуль
Import-Module WebAdministration
Смотрим
get-psdrive
и видим что есть диск IIS
Чтоб подписать скрипт:
http://www.iisworkstation.com/2009/06/troubleshooting-iis-powershell-module.html
Установить Windows PowerShell Snap-In.
http://www.iis.net/download/powershell
Запустить PowerShell
Подключить модуль
Import-Module WebAdministration
Выдает ошибку:
Import-Module : The following error occurred while loading the extended type data file:
Microsoft.PowerShell, C:\Windows\system32\WindowsPowerShell\v1.0\Modules\WebAdministration\iisprovider.types.ps1xml : File skipped because it was already present from "Microsoft.PowerShell".
Можно сделать так:
Set-ExecutionPolicy RemoteSigned
Закрыть powershell и снова открыть.
После этого подключаем модуль
Import-Module WebAdministration
Смотрим
get-psdrive
и видим что есть диск IIS
Чтоб подписать скрипт:
http://www.iisworkstation.com/2009/06/troubleshooting-iis-powershell-module.html
Ярлыки:
Компоненты Windows,
IIS,
powershell,
Windows
вторник, 29 ноября 2011 г.
powershell запуск неподписаных скриптов
Set-ExecutionPolicy Unrestricted
Ярлыки:
powershell,
Windows
Подписаться на:
Сообщения (Atom)