

Windows10Proを使用しています。  
PowerShell7.3.3をインストールしました。  
ストアが利用できない環境なので、GitHubからインストーラーを取得しています。

PowerShell7.3.3インストール後の状態です。  
Windows Terminalで作業しています。

[code]

    > $PSVersionTable                                           
    
    Name                           Value
    ----                           -----
    PSVersion                      7.3.3
    PSEdition                      Core
    GitCommitId                    7.3.3
    OS                             Microsoft Windows 10.0.19044
    Platform                       Win32NT
    PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
    PSRemotingProtocolVersion      2.3
    SerializationVersion           1.1.0.1
    WSManStackVersion              3.0
    
[/code]

以下の内容でスクリプトファイルを作成し実行しました。

[code]

    Write-Host $PSVersionTable.PSVersion
    
[/code]

[code]

    > powershell .\version.ps1
    5.1.19041.2364
    
[/code]

Versionが、「5.1.x」とあり、「7.3.x」で実行されていないことに気がつきました。

実行時にVersionを指定したらエラーになりました。

[code]

    > powershell -v 7 .\version.ps1      
    Windows PowerShell バージョン 7 はインストールされていないため、起動できません。
    
[/code]

Windows Terminalではなく、Windowsメニュー > PowerShell > PowerShell 7 (x64) でも同じ事象です。

Windowsメニュー > Windows PowerShell > Windows PowerShell
で実行したら、Ver.5.1.xが表示されました。

スクリプトファイルを実行する場合でも、Versionが7.3.xになるようにするにはどのようにすると良いでしょうか。  
確認すべき箇所あればご指摘いただけますようお願いします。


CC BY-SA 4.0
2023-03-14T06:40:47.710
94167
2023-03-14T07:01:15.077
27721
question
powershell
PowerShellをVer.7.3.xにしたが、Scriptファイルを実行するとVer.5.1.xで実行されているので、Ver.7.3.xにしたいです


PowerShell 7 での実行ファイル名は `pwsh.exe` に変更されています。

[Windows PowerShell 5.1 から PowerShell 7 への移行 | Microsoft
Learn](https://learn.microsoft.com/ja-jp/powershell/scripting/whats-
new/migrating-from-windows-powershell-51-to-powershell-7?view=powershell-7.3)

> ### [個別のインストール パスと実行可能ファイル名](https://learn.microsoft.com/ja-
> jp/powershell/scripting/whats-new/migrating-from-windows-powershell-51-to-
> powershell-7?view=powershell-7.3#separate-installation-path-and-executable-
> name)
>
> Windows PowerShell では、PowerShell の実行可能ファイルには `powershell.exe` という名前が付けられます。
> バージョン 6 以降では、実行可能ファイルには `pwsh.exe` という名前が付けられます。

Windows Terminal のプロファイルでも、`pwsh.exe` を呼び出すようにしておく必要があります。

[![画像の説明をここに入力](https://i.stack.imgur.com/30TnB.png)](https://i.stack.imgur.com/30TnB.png)

自分は試していませんが、スクリプト (`*.ps1`) の関連付けも変更したい場合には、以下の記事でレジストリの設定を変更する例が紹介されています。

**参考:**  
[PowershellをPwsh(Powershell 7)に置き換える -
Qiita](https://qiita.com/BlueSilverCat/items/0e1430c0d9d60e7e8734)


CC BY-SA 4.0
2023-03-14T07:01:15.077
94168
2023-03-14T07:01:15.077
3060
94167
answer