須藤!! PowerShellで同等


回答:


13

$^ 最後に実行されたPowershellコマンドに展開される変数です。

を使用して別のユーザーとしてコマンドを実行できるrunasため、次のように機能します。

runas /user:domain\administrator $^

これを少し短くするために、エイリアスを使用して魔法をかけることができます。詳細については、このTechnetの記事をご覧ください。

編集:1つの警告- $^パイプラインまたはマルチコマンドラインの最初のコマンドのみを実行します。パイプまたはセミコロンで覆われたコマンド全体を再実行する必要がある場合は、Invoke-History代わりに使用します(デフォルトでは最後の完全なコマンド全体になります)。


3
実際に$^は、前のコマンドの最初のトークンです。. ./foo.ps1then $^でスクリプトをドットソース化すると、になります.。これは、引数が含まれていないことも意味します。単一のトークンを超えるものを実行しても、この方法では機能しません。
ジョーイ

OK、その後パスワードを要求しますか?スクリプトにプレーンテキストのパスワードを埋め込むことを避けようとしています。
シニアシステムエンジニア

はい、そうです。管理者としてスクリプトを実行しない限り、管理者権限が必要なことを行うには資格情報を提供する必要があります。あなたは、埋め込まれたパスワードをトークン化するためにKiXtartのような何かに見てみたいことがあります
Hyppy

0

私は常にsudoの機能のいくつかを近似する試みとしてJEA(Just Enough Administration)を使用しています。あなたはそれについてここで読むことができます:

https://docs.microsoft.com/en-us/powershell/jea/overview

異なる点は、ローカルマシンに適用するのではなく、PSリモート処理を使用することです。これは非常に重大な違いであり、sudoから離れすぎてしまうほどです。

runasなどを使用してユーザーアカウント制御のアカウントに昇格することは、私にはあまり適していません。の類似物のようなものですsu -


1
We're sorry, the page you requested cannot be found.。ているように見えるここになりました。
GnP
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.