Windows: Запуск файлов .ps1 от имени администратора через контекстное меню.
В Windows почему-то файлы powershell скриптов (.ps1) не имеют пункта "Запустить от имени администратора". Что странно, т.к. это тоже скрипты, только выполняются они не CMD, а Windows Powershell. Исправить ситуацию можно небольшими изменениями реестра.
1. В ветке HKEY_CLASSES_ROOT\Microsoft.PowerShellScript.1\shell создаем подраздел с именем runas и пустой строковый параметр с именем HasLUAShield.
2. В ветке HKEY_CLASSES_ROOT\Microsoft.PowerShellScript.1\shell\runas создаем подраздел с именем command.
3.1 Если хотим чтобы окно powershell закрывалось после выполнения скрипта в ветке HKEY_CLASSES_ROOT\Microsoft.PowerShellScript.1\shell\runas\command меняем параметр (По умолчанию) на powershell.exe "-Command" "if((Get-ExecutionPolicy ) -ne 'AllSigned') { Set-ExecutionPolicy -Scope Process Bypass }; & '%1'"
3.2 Если хотим чтобы окно powershell не закрывалось после выполнения скрипта и был виден результат в ветке HKEY_CLASSES_ROOT\Microsoft.PowerShellScript.1\shell\runas\command меняем параметр (По умолчанию) на powershell.exe –NoExit "-Command" "if((Get-ExecutionPolicy ) -ne 'AllSigned') { Set-ExecutionPolicy -Scope Process Bypass }; & '%1'"
После всех этих манипуляций в контекстном меню файлов .ps1 появится пункт "Запуск от имени администратора"
Для ленивых: скачать готовые reg-файлы для импорта можно отсюда.