PowerShellの実行ポリシーを変更しないと、スクリプトを記述したファイルを実行してもエラーとなります。
この記事では、実行ポリシーの変更をしなくても、一時的に実行ポリシーを変更し、PowerShellスクリプトを実行する方法を記します。
環境を変更したくないWindows環境などで使用できると思います。
実行ポリシーについては「PowerShell実行ポリシーを変更しPowerShellスクリプトを起動できるようにする」を参考にしてください。
他の方法としては、関連記事にある、Invoke-Expressionコマンドレットで動かす方法もあります。
実行ポリシーがデフォルトのままで、PowerShellスクリプトを実行すると、下図のスクリーンショットのようにエラーとなります。
これを、エラーなしでスクリプト実行するようにするには、以下のようにします。
powershellコマンドのオプション -ExecutionPolicy に Bypass を付けることによって、実行ポリシーを一時的に変え、スクリプトを実行することができます。
(環境によっては、Remote Signedを使用します。ほとんどの場合は、Bypassでよいと思います。)
Write-Host "Hello world"
powershell -ExecutionPolicy Bypass -command スクリプト
powershell -ExecutionPolicy Bypass -command .\hello.ps1
以上、PowerShellの実行ポリシーを変更せず、PowerShellスクリプトを実行する方法でした。