この記事は
PowerShellで、ps1スクリプトを実行する方法をノートします。
まずはやってみる
たまたまproxy設定したかったので、そんな内容のset_proxy.ps1
を実行したい!
PS C:\git\nnabla.git> .\set_proxy.ps1
.\set_proxy.ps1 : このシステムではスクリプトの実行が無効になっているため、ファイル C:\git\nnabla.git\set_proxy.ps1 を読
み込むことができません。詳細については、「about_Execution_Policies」(https://go.microsoft.com/fwlink/?LinkID=135170) を
参照してください。
発生場所 行:1 文字:1
+ .\set_proxy.ps1
+ ~~~~~~~~~~~~~~~
+ CategoryInfo : セキュリティ エラー: (: ) []、PSSecurityException
+ FullyQualifiedErrorId : UnauthorizedAccess
=> 冷たくない??
実行権限を設定する
Set-ExecutionPolicy RemoteSigned
する
tips:
TABで入力補完を使いながらコマンド入力すれば、
タイプミス、コマンド忘れ、などあっても大丈夫!
PS C:\git\nnabla.git> Set-ExecutionPolicy RemoteSigned
実行ポリシーの変更
実行ポリシーは、信頼されていないスクリプトからの保護に役立ちます。実行ポリシーを変更すると、about_Execution_Policies
のヘルプ トピック (https://go.microsoft.com/fwlink/?LinkID=135170)
で説明されているセキュリティ上の危険にさらされる可能性があります。実行ポリシーを変更しますか?
[Y] はい(Y) [A] すべて続行(A) [N] いいえ(N) [L] すべて無視(L) [S] 中断(S) [?] ヘルプ (既定値は "N"): Y
Set-ExecutionPolicy : レジストリ キー 'HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell
' へのアクセスが拒否されました。 既定 (LocalMachine) のスコープの実行ポリシーを変更するには、[管理者として実行] オプシ
ョンを使用して Windows PowerShell を起動してください。現在のユーザーの実行ポリシーを変更するには、"Set-ExecutionPolicy
-Scope CurrentUser" を実行してください。
発生場所 行:1 文字:1
+ Set-ExecutionPolicy RemoteSigned
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : PermissionDenied: (:) [Set-ExecutionPolicy], UnauthorizedAccessException
+ FullyQualifiedErrorId : System.UnauthorizedAccessException,Microsoft.PowerShell.Commands.SetExecutionPolicyComma
nd
=> 固すぎるでしょ
CurrentUserへ実行権限を与える
Set-ExecutionPolicy -Scope CurrentUser
して、RemoteSigned
を付与する
PS C:\git\nnabla.git> Set-ExecutionPolicy -Scope CurrentUser
コマンド パイプライン位置 1 のコマンドレット Set-ExecutionPolicy
次のパラメーターに値を指定してください:
ExecutionPolicy: RemoteSigned
実行ポリシーの変更
実行ポリシーは、信頼されていないスクリプトからの保護に役立ちます。実行ポリシーを変更すると、about_Execution_Policies
のヘルプ トピック (https://go.microsoft.com/fwlink/?LinkID=135170)
で説明されているセキュリティ上の危険にさらされる可能性があります。実行ポリシーを変更しますか?
[Y] はい(Y) [A] すべて続行(A) [N] いいえ(N) [L] すべて無視(L) [S] 中断(S) [?] ヘルプ (既定値は "N"): Y
そしたら、
PS C:\git\nnabla.git> .\set_proxy.ps1
PS C:\git\nnabla.git>
エラーが返ってこなくなったので、
Get-Item -Path Env:http_proxy
でvalueを読み出してみる。
PS C:\git\nnabla.git> Get-Item -Path Env:http_proxy
Name Value
---- -----
http_proxy <proxy address>
=> おっけ!
おまけ
拡張子をまちがえて "ps" で保存したら、adobe系が反応した。ぽstscりpt