Как я могу запускать команды в PowerShell с разрешениями администратора?

Я хотел бы запускать команды в PowerShell с разрешениями администратора? Как я могу это сделать?

Я попытался запустить PowerShell с помощью команды runas , но PowerShell закрывается сразу после ввода пароля.

Я использую Windows 7, и я единственный пользователь на компьютере.

  • Как отключить аппаратное ускорение в Windows 7?
  • Элемент меню выбирает элемент, застрявший на экране после того, как контекст или командное меню закрылись
  • Где хранятся настройки гаджета часов Windows 7?
  • Bat-файл, чтобы отключить адаптер ethernet, а затем повторно использовать его после входа в Windows
  • Как устранить проблему перенаправления портов в Windows 7 (64 бит) при включенном ICS?
  • Есть ли комбинация клавиш для «Открыть местоположение файла» в Windows Search?
  • Использование удаленного рабочего стола с пользовательским DPI
  • Как добавить несколько расширений файлов к функции поиска внутри WIndows 7?
  • 4 Solutions collect form web for “Как я могу запускать команды в PowerShell с разрешениями администратора?”

    Обычно, когда я вижу, что powershell немедленно закрывается, это проблема с политикой исполнения . Нажмите «Сфера», введите «Powershell», затем «Право», нажав ссылку, и «запуститесь как администратор» и откроете ли он этот путь?

    Затем вы можете посмотреть, что происходит, перейдите к папке, где находится ваш скрипт, и выполните ./NameofScript.ps1

    Если вы уже находитесь в PowerShell, введите: Start-Process powershell -verb runas

    Я пишу функцию sudo, чтобы выполнить более мощные вещи, например, выполнить что-то повышенное и получить результат в той же оболочке, например:

    sudo {rm fileThatNeedElevatedRightsToBeDeleted; ls} 

    Вот код:

     function sudo(){ param([String] $code) $viejos = gps powershell $here = add-quotes (get-location).path $resultPath = [IO.Path]::GetTempPath() + "temp.result.xml"; $code = "set-location $here; function Run{$code};Run $args|Export-Clixml $resultPath" $encoded = [Convert]::ToBase64String([Text.Encoding]::Unicode.GetBytes($code)) start-process PowerShell.exe -verb Runas -argumentlist '-encodedCommand',$encoded $nuevos = gps powershell $array = New-Object Collections.Generic.List[int] $array2 = New-Object Collections.Generic.List[int] $viejos | %{$array.add($_.ID)} $nuevos | %{$array2.add($_.ID)} $idTowait = $array2 | ?{$array -notcontains $_} while(1){ $nuevos = gps powershell $array2.Clear() $nuevos | %{$array2.add($_.ID)} if($array2 -contains $idTowait) {sleep -Milliseconds 500} else {break;} } if(Test-Path $resultPath){ if((gi $resultPath).length) { Import-Clixml $resultPath rm $resultPath } } else {"No results"}; } в function sudo(){ param([String] $code) $viejos = gps powershell $here = add-quotes (get-location).path $resultPath = [IO.Path]::GetTempPath() + "temp.result.xml"; $code = "set-location $here; function Run{$code};Run $args|Export-Clixml $resultPath" $encoded = [Convert]::ToBase64String([Text.Encoding]::Unicode.GetBytes($code)) start-process PowerShell.exe -verb Runas -argumentlist '-encodedCommand',$encoded $nuevos = gps powershell $array = New-Object Collections.Generic.List[int] $array2 = New-Object Collections.Generic.List[int] $viejos | %{$array.add($_.ID)} $nuevos | %{$array2.add($_.ID)} $idTowait = $array2 | ?{$array -notcontains $_} while(1){ $nuevos = gps powershell $array2.Clear() $nuevos | %{$array2.add($_.ID)} if($array2 -contains $idTowait) {sleep -Milliseconds 500} else {break;} } if(Test-Path $resultPath){ if((gi $resultPath).length) { Import-Clixml $resultPath rm $resultPath } } else {"No results"}; } 

    Для административной задачи я большую часть времени запускаю экземпляр PowerShellISE. Я скопировал ссылку, чтобы запустить ISE из All Programs | Аксессуары | Windows PowerShell | Windows PowerShell ISE на панели задач. Чтобы запустить ISE с правами администратора, я нажимаю клавиши shift + control, а левой кнопкой мыши на значке панели задач. После ответа на диалог UAC он готов.

    Примечание. При обычном ISE я почти никогда не использую диалоговые окна Open File, а перетаскиваю файлы из какого-либо окна Explorer в ISE. Когда ISE работает в режиме администратора, это перетаскивание невозможно по какой-либо причине безопасности.

    PowerShell ISE живет в% windir% \ system32 \ WindowsPowerShell \ v1.0 \ PowerShell_ISE.exe. Вы можете щелкнуть его правой кнопкой мыши и выбрать «Запуск от имени администратора» и запустить сценарий там.

    Вы также можете найти его под логотипом Windows> Все программы> Стандартные> Windows PowerShell и сделать то же самое с этими ярлыками.

    Давайте будем гением компьютера.