Powershellを一時的に管理者権限で使用する


定常業務の自動化をPowershellに

業務では、客先の環境やテスト環境などで自由にソフトウェアをインストールできないことが多々あると思います。
そこでCUIを使用して定常業務を自動でやってもらおうとしても、bat ではやれることが少なかったり、難しくなったりします。
しかし、最近のWindowsでは Powershell が標準で入っていて、.NETを使用してCUIで高度な処理ができるようになりました。

Powershellを業務で使用する時の制約

Powershell は高機能故に実行権限に厳しくなっており、標準のまま実行しようとすると管理者権限がないと警告されて実行できないことが多いです。
しかし、業務環境ではシステムの設定を変更するわけにもいかず。。。という時、
実行するものに限り一時的に管理者権限に昇格することが可能です。

Powershellの実行権限を一時的に管理者にする

hello.ps1を管理者権限で実行
powershell -ExecutionPolicy Bypass .\hello.ps1

※powershellのパラメータについては、以下が参考になるとおもいます。
PowerShellのExecutionPolicyのスコープとかについて詳しく

上記コマンドはbatからも実行可能です。
定常業務などではbatからのほうが扱いやすい場合が多いので、batを予め作成しておくと便利です。
そのテンプレートをアップしましたので、よかったらお使いください。