PowerShell

クラウドストレージなどからダウンロードしたps1スクリプトを実行する

クラウドストレージなどからダウンロードしたスクリプトファイルは、そのままでは実行できない

しかし、Unblock-Fileコマンドレットにより、「ダウンロードした」という属性を削除することで、ExecutionPolicyがRemoteSignedであっても実行できるようになる。

PowerShellの実行ポリシー

PowerShellの実行ポリシーはデフォルトでRemoteSignedとなっており、ダウンロードしたファイルは署名がある場合に限り実行可能である。

PowerShellの実行ポリシー設定は次のように確認できる。

> Get-ExecutionPolicy
RemoteSigned

Unblock-File

実行ポリシーを変更せずにダウンロードしたスクリプトを実行できるようにするには、事前に次のコマンドをスクリプトファイルに対して実行する。

Unblock-File -Path 実行できるようにしたいスクリプトファイルのパス

Zone.Identifierとは

クラウドストレージからダウンロードしたスクリプトファイルをWSLのフォルダに移動したりすると、Windowsでは見えない「Zone.Identifier」というファイルが現れる。

Unblock-Fileコマンドレットでは、このZone.Identifierを削除している。

参考URL

Unblock-File (Microsoft.PowerShell.Utility) - PowerShell
This cmdlet only works on the Windows and macOS platforms. The Unblock-File cmdlet lets you open files that were downloa...
プロフィール

興味のあること、つまづいたこと、考えたことなどを書いています。

カテゴリー

コメント

タイトルとURLをコピーしました