답변:
$^
마지막으로 실행 된 Powershell 명령으로 확장되는 변수입니다.
을 사용하여 다른 사용자로 명령을 실행할 수 runas
있으므로 다음이 작동합니다.
runas /user:domain\administrator $^
약간 줄이려면 별칭을 사용하여 마술을 할 수 있습니다. 자세한 내용 은 이 Technet 기사 를 참조하십시오.
편집 : 한 가지주의 사항- $^
파이프 라인 또는 다중 명령 줄에서 첫 번째 명령 만 실행하십시오. 파이프 나 세미콜론으로 페퍼 된 전체 명령을 다시 실행해야하는 경우 Invoke-History
대신 대신 전체 명령을 사용하십시오.
나는 항상 sudo의 일부 기능을 근사화하려는 시도로 JEA (Just Enough Administration)를 사용하고 있습니다. 여기에서 읽을 수 있습니다.
https://docs.microsoft.com/en-us/powershell/jea/overview
다른 점은 로컬 컴퓨터에 적용하는 대신 PS 원격을 사용한다는 것입니다. 이것은 sudo에서 너무 멀어지기에 상당히 중요한 차이 일 수 있습니다.
runas 또는 다른 것을 사용하여 사용자 계정 컨트롤을 설명하는 것은 실제로 나에게 적합하지 않습니다. 의 유사점입니다 su -
.
$^
의 첫 번째 토큰 입니다. 내가 함께 스크립트를 소스를 점하면. ./foo.ps1
다음$^
이다.
. 이것은 또한 인수가 포함되어 있지 않음을 의미합니다. 단일 토큰을 초과하는 작업은이 방법으로 작동하지 않습니다.