サンプル集  >  PowerShell  >  Hello world
Hello world
2022/01/30

PowerShellでHello worldと表示します。

◆環境
OS Windows 10 Home 20H2 64bit OS x64 プロセッサ

echoでHello worldと表示するようにします。

helloworld.ps1
1: 
echo Hello World!!

スタートメニューから「Windows PowerShell」を選択します。

実行してみます。

Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.

新しいクロスプラットフォームの PowerShell をお試しください https://ak
a.ms/pscore6

PS C:\work> .\helloworld.ps1
.\helloworld.ps1 : このシステムではスクリプトの実行が無効になっている
ため、ファイル C:\work\helloworld.ps1 を読み込むこ
とができません。詳細については、「about_Execution_Policies」(https://
go.microsoft.com/fwlink/?LinkID=135170) を参照して
ください。
発生場所 行:1 文字:1
+ .\helloworld.ps1
+ ~~~~~~~~~~~~~~~~
    + CategoryInfo          : セキュリティ エラー: (: ) []、PSSecurit
yException     + FullyQualifiedErrorId : UnauthorizedAccess

PS C:\work>

Windowsの初期設定ではPowerShellのスクリプトの実行ができないように設定されているようです。

Get-ExecutionPolicyで現在の設定を確認します。

PS C:\work> Get-ExecutionPolicy
Restricted

powershellを実行するときに-ExecutionPolicyでRemoteSignedを指定したところ実行できました。

PS C:\work> powershell.exe -ExecutionPolicy RemoteSigned .\helloworld
.ps1
Hello
World!!

Helloで改行していますね。

Set-ExecutionPolicyで設定を変更することができるようです。

PS C:\work> powershell.exe Set-ExecutionPolicy RemoteSigned
Set-ExecutionPolicy : レジストリ キー 'HKEY_LOCAL_MACHINE\SOFTWARE\Mi
crosoft\PowerShell\1\ShellIds\Microsoft.PowerShell
' へのアクセスが拒否されました。 既定 (LocalMachine) のスコープの実行
ポリシーを変更するには、[管理者として実行] オプシ
ョンを使用して Windows PowerShell を起動してください。現在のユーザー
の実行ポリシーを変更するには、"Set-ExecutionPolicy
-Scope CurrentUser" を実行してください。
発生場所 行:1 文字:1
+ Set-ExecutionPolicy RemoteSigned
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : PermissionDenied: (:) [Set-ExecutionPol
icy], UnauthorizedAccessException
    + FullyQualifiedErrorId : System.UnauthorizedAccessException,Micr
osoft.PowerShell.Commands.SetExecutionPolicyComma
   nd

スタートメニューの「Windows PowerShell」を右クリックし「管理者として実行する」を選択しWindows PowerShellを起動します。

起動したPowerShellのウインドウのタイトルに「管理者:」と表示されました。

もう一度Set-ExecutionPolicyを実行してみます。

PS C:\work> powershell.exe Set-ExecutionPolicy RemoteSigned
PS C:\work>

特に何も表示されませんでした。

helloworld.ps1を実行してみます。

PS C:\work> .\helloworld.ps1
Hello
World!!

-ExecutionPolicyを指定しなくても実行できるようになりました。

▲ PageTop  ■ Home


Copyright (C) 2022 ymlib.com