Перейти к содержимому

Как запустить ps1 скрипт от администратора

  • автор:

Запуск Windows PowerShell

Windows PowerShell — это обработчик скриптов , который внедрен в несколько узлов. Самый распространенный запускаемый узел — интерактивная командная строка powershell.exe и интерактивная среда скриптов powershell_ise.exe .

В PowerShell есть переименованный двоичный файл

В PowerShell 6 и более поздних версиях используется .NET Core. Поддерживаемые версии доступны в Windows, macOS и Linux.

Начиная с PowerShell 6 двоичный файл PowerShell был переименован в pwsh.exe для Windows и pwsh для macOS и Linux. Вы можете запустить предварительную версию PowerShell с помощью pwsh-preview . Дополнительные сведения см. в статье Сведения о pwsh.

Чтобы найти справку по командлетам и документацию по установке для PowerShell 7, воспользуйтесь следующими ссылками:

Документ Ссылка
Справочник по командлетам Обозреватель модулей PowerShell
Установка в Windows Установка PowerShell в Windows
Установка в macOS Установка PowerShell в macOS
Установка в Linux Установка PowerShell в Linux

Сведения о других версиях PowerShell см. в документации по использованию PowerShell.

Запуск Windows PowerShell в более ранних версиях Windows

В этом разделе объясняется, как запустить Windows PowerShell и интегрированную среду скриптов Windows PowerShell (ISE) в Windows 7, Windows Server 2008 R2 и Windows Server 2008. Кроме того, здесь поясняется, как включить дополнительный компонент Windows PowerShell ISE в Windows PowerShell 2.0 в ОС Windows Server 2008 R2 и Windows Server 2008.

Используйте любой из следующих методов для запуска установленной версии Windows PowerShell 3.0 или Windows PowerShell 4.0, где это возможно.

Из меню «Пуск»

  • Нажмите кнопку Пуск, введите PowerShell и выберите Windows PowerShell.
  • В меню Пуск выберите Пуск, Все программы, Стандартные, откройте папку Windows PowerShell и щелкните Windows PowerShell.

В командной строке

В командной оболочке Windows, Windows PowerShell или среде сценариев Windows PowerShell для запуска Windows PowerShell введите: PowerShell

Можно также использовать параметры программы powershell.exe для настройки сеанса. Дополнительные сведения см. в статье Справка по командной строке PowerShell.exe.

С правами администратора (Запуск от имени администратора)

Нажмите кнопку Пуск, введите PowerShell, щелкните правой кнопкой мыши Windows PowerShell и выберите пункт Запуск от имени администратора.

Запуск интегрированной среды сценариев Windows PowerShell в более ранних версиях Windows

Используйте один из следующих методов для запуска интегрированной среды сценариев Windows PowerShell.

Из меню «Пуск»

  • Нажмите кнопку Пуск, введите Интегрированная среда сценариев и выберите Интегрированная среда сценариев Windows PowerShell.
  • В меню Пуск выберите Пуск, Все программы, Стандартные, откройте папку Windows PowerShell и щелкните Интегрированная среда сценариев Windows PowerShell.

В командной строке

В командной оболочке Windows, Windows PowerShell или среде сценариев Windows PowerShell для запуска Windows PowerShell введите: PowerShell_ISE В Windows PowerShell можно использовать псевдоним ise .

С правами администратора (Запуск от имени администратора)

Нажмите кнопку Пуск, введите Интегрированная среда сценариев, щелкните правой кнопкой мыши Интегрированная среда сценариев Windows PowerShell и выберите пункт Запуск от имени администратора.

Запуск 32-разрядной версии Windows PowerShell

При использовании 64-разрядного компьютера Windows PowerShell (x86)32-разрядная версия Windows PowerShell устанавливается в дополнение к 64-разрядной версии. При открытии Windows PowerShell по умолчанию запускается 64-разрядная версия.

Однако в некоторых случаях нужно запустить Windows PowerShell (x86), например при использовании модуля, которому требуется 32-разрядная версия, или при удаленном подключении к 32-разрядному компьютеру.

Для запуска 32-разрядной версии Windows PowerShell воспользуйтесь любой из следующих процедур.

Совместная работа с нами на GitHub

Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.

Как запустить команду в powershell с правами администратора?

Возможно ли выполнить команду в powershell с правами администратора, если powershell запущена без прав администратора?

Отслеживать
задан 21 фев 2020 в 5:36
Матвей Иссаков Матвей Иссаков
31 4 4 бронзовых знака

1 ответ 1

Сортировка: Сброс на вариант по умолчанию

Если вы запустили powerShell без прав администратора, то коммандно можно перейти в командную строку для администратора:

PS> Start-Process powershell -Verb runAs 

либо если у вас скрипт запущен без соответствующих прав, то добавьте туда эти строки:

If (-NOT ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] "Administrator"))

Вот есть подобный вопрос.

Запуск PowerShell скрипта из проводника с правами администратора

date

30.09.2016

user

itpro

directory

PowerShell, Windows 10

comments

комментариев 10

В Windows скрипты PowerShell (расширение .PS1) по умолчанию не ассоциированы с исполнимым файлом PowerShell.exe. При двойном щелке по файлу сценария PS1 открывается окно тестового редактора notepad.exe. Запустить файл PS1 на выполнение в среде PowerShell можно из контекстного меню проводника, выбрав пункт Run With PowerShell. Однако такой сценарий запускается в рамках сессии пользователя, без прав администратора. Хотя для тех же файлов скриптов .bat, .cmd, имеется отдельный пункт меню Run As administrator. В случае с PowerShell приходится открывать консоль Power Shell с повышенными правами и указывать полный путь к файлу скрипта. Не очень-то удобно.

Рассмотрим, как добавить в контекстное меню проводника File Explorer для файлов с расширением *.ps1, пункт, позволявший запустить скрипт PowerShell с правами администратора.

    Запустите редактор реестра (regedit.exe)

  • Перейдите в ветку HKEY_CLASSES_ROOT\Microsoft.PowerShellScript.1\shellHKEY_CLASSES_ROOT\Microsoft.PowerShellScript.1\shell
  • Создайте подраздел с именем runas и перейдите в него
  • Внутри раздела runas создайте пустой строковый параметр (String Value) с именем HasLUAShield (этот параметр добавит иконку UAC в контекстное меню проводника)
  • В разделе runas создайте вложенный подраздел commandHasLUAShield
  • В качестве значения параметра Default раздела command укажите значение: powershell.exe «-Command» «if((Get-ExecutionPolicy ) -ne ‘AllSigned’) < Set-ExecutionPolicy -Scope Process Bypass >; & ‘%1′» powershell.exe Command
  • Теперь, если щелкнуть ПКМ по любому *.PS1 файлу, в контекстном меню можно выбрать пункт Run as administratorPowerShell скрипт ps1 - RunAsAdministrator
  • Совет. Если скрипт отрабатывает быстро, пользователь успевает только увидеть появившееся и быстро исчезнувшее окно PowerShell. А что делать, если результат выполнения скрипта должен остаться на экране для просмотра пользователем?

    Чтобы после окончания работы скрипта, окно консоли PowerShell не закрывалось, необходимо добавить в строку параметр –NoExit:

    powershell.exe –NoExit «-Command» «if((Get-ExecutionPolicy ) -ne ‘AllSigned’) < Set-ExecutionPolicy -Scope Process Bypass >; & ‘%1′»

    Запуск PowerShell скрипта из проводника с правами администратора

    Windows

    В Windows сценарии PowerShell (расширение .PS1) по умолчанию не связаны с исполняемым файлом PowerShell.exe. Если дважды щелкнуть файл сценария PS1, откроется редактор теста notepad.exe. Вы можете запустить файл PS1 для запуска в PowerShell из контекстного меню проводника, выбрав «Выполнить с помощью PowerShell». Однако этот сценарий запускается в рамках сеанса пользователя без прав администратора. Хотя для тех же файлов сценариев .bat, .cmd есть отдельный пункт меню Запуск от имени администратора. В случае PowerShell вам необходимо открыть консоль Power Shell с повышенными привилегиями и указать полный путь к файлу сценария. Не очень удобно.

    Давайте посмотрим, как добавить элемент в контекстное меню проводника для файлов с расширением * .ps1, который позволяет запускать сценарий PowerShell с правами администратора.

    1. Запустите редактор реестра (regedit.exe)
    2. Перейдите в HKEY_CLASSES_ROOT \ Microsoft.PowerShellScript.1 \ shell HKEY_CLASSES_ROOT \ Microsoft.PowerShellScript.1 \ оболочка
    3. Создайте подраздел под названием runas и перейдите в него
    4. Внутри раздела runas создайте пустое строковое значение с именем HasLUAShield (этот параметр добавит значок UAC в контекстное меню проводника)
    5. В разделе runas создайте команду подраздела HaLUAShield
    6. В качестве значения параметра Default раздела Command укажите значение: powershell.exe «-Command» «if((Get-ExecutionPolicy ) -ne ‘AllSigned’) < Set-ExecutionPolicy -Scope Process Bypass >; & ‘%1′» команда powershell.exe
    7. Теперь, если вы щелкните правой кнопкой мыши любой файл * .PS1, вы можете выбрать Запуск от имени администратора в контекстном меню Скрипт PS1 PowerShell - RunAsAdministrator

    Совет. Если сценарий выполняется быстро, у пользователя есть время только для того, чтобы увидеть окно PowerShell, которое быстро появляется и исчезает. Но что, если результат выполнения скрипта останется на экране для просмотра пользователем?

    Чтобы окно консоли PowerShell не закрывалось после завершения сценария, добавьте в строку параметр –NoExit:

    powershell.exe –NoExit «-Command» «if((Get-ExecutionPolicy ) -ne ‘AllSigned’) < Set-ExecutionPolicy -Scope Process Bypass >; & ‘%1′»

    Источник изображения: winitpro.ru

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *