"Судо !!" вызывает ранее выполненную команду с правами администратора в оболочке * nix. Есть ли эквивалент в PowerShell?
$^
- это переменная, которая расширяется до последней выполненной команды Powershell.
Вы можете запустить команду от имени другого пользователя, используя runas
, поэтому работает следующее:
runas /user:domain\administrator $^
Чтобы немного сократить это, вы можете творить чудеса с псевдонимами. Взгляни на эта статья Technet для получения дополнительной информации.
РЕДАКТИРОВАТЬ: одно предостережение - $^
выполняет только первую команду в конвейере или в многокомандной строке. Если вам нужно повторить всю команду, заправленную вертикальными чертами или точками с запятой, используйте Invoke-History
вместо этого (по умолчанию используется последняя полная команда целиком).
Я всегда думал о JEA (Just Enough Administration) как о попытке приблизиться к некоторым функциям sudo. Вы можете прочитать об этом здесь:
https://docs.microsoft.com/en-us/powershell/jea/overview
Отличие заключается в том, что он использует удаленное взаимодействие PS, а не применяется к локальной машине. Это может быть очень важное различие, достаточное, чтобы отодвинуть его слишком далеко от sudo.
Повышение до учетной записи для управления учетными записями пользователей с использованием runas или чего-то еще мне не очень подходит. Это больше похоже на параллель su -
.