batファイルからPowershellを管理者権限で外部スクリプトを呼び出したいということで備忘録として残します。
すでにPowershellをRestricted以外の動作モードの場合は他のページのやり方でうまくいくのですが、一度もPowershellを起動した環境がない場合の苦肉の策になります。
環境
Windows10 バージョン1803 (17134.765)
以下のコマンドをDOSプロンプトやバッチの中で実行する
一度もPowershellを起動していないPC等で、ダルクリックでPowershellスクリプトを実行したいときに有用かと思います。
powershell -NoProfile -ExecutionPolicy RemoteSigned -Command "Start-Process powershell.exe -ArgumentList \"-ExecutionPolicy RemoteSigned\",\"hello.ps1\" -Verb runas"
-ArgumentListの書き方はいろいろあるようだが、string型の配列らしい。
実行するスクリプトへはパスを通すかフルパスで指定が必要です