PowerShell 6.1をWindows 10に導入したので覚書
PowerShell 6.1をWindows 10端末に導入したので覚書
参考サイト、文献
導入に当たっては以下のサイト、書籍を参考にしました
身も蓋もありませんが、より深く理解したい人やmacOSやLinuxに導入したい人は、この記事読むより上記のサイト、書籍を読んで下さい
PowerShell実践ガイドブック ~クロスプラットフォーム対応の次世代シェルを徹底解説~
- 作者: 吉崎生
- 出版社/メーカー: マイナビ出版
- 発売日: 2018/05/30
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (1件) を見る
PowerShell実践ガイドブック クロスプラットフォーム対応の次世代シェルを徹底解説
- 作者: 吉崎生
- 出版社/メーカー: マイナビ出版
- 発売日: 2018/05/30
- メディア: Kindle版
- この商品を含むブログを見る
PowerShell Core のサポート ライフサイクル
PowerShell 6.xを導入するにあたっては PowerShell Core のサポート ライフサイクル | Microsoft Docs を把握しておくことをお勧めします
最新の PowerShell 6.x のインストーラをダウンロードして実行
Releases · PowerShell/PowerShell · GitHub からインストーラーをダウンロード (自分は64bit版Windows 10なので PowerShell-6.1.0-win-x64.msi
)
インストーラの実行は特に迷うところもないので省略
規定値では %ProgramFiles%\PowerShell\6\
にPowerShellがインストールされ、実行ファイルは pwsh.exe
になります
また、インストーラがシステム環境変数の PATH
に上記pathを追加するので以降 pwsh で PowerShell 6.xが呼び出せるようになります
ターミナルからバージョンの確認
コマンドプロンプトからはpwsh --version
でpwsh.exeのバージョンが、また --command
で従来のWindows PowerShellの powershell
同様にPowerShellのコマンドが実行できます
cmd >pwsh --version PowerShell 6.1.0 cmd >pwsh -command $PSVersionTable.PSVersion Major Minor Patch PreReleaseLabel BuildLabel ----- ----- ----- --------------- ---------- 6 1 0
Windows PowerShell 5以前との共存を確認
(従来通り) Windows PowerShell (v5.1 or less than...) を呼び出すときは powershell
コマンドを使います
cmd >powershell -command $PSVersionTable.PSVersion Major Minor Build Revision ----- ----- ----- -------- 5 1 17134 228
また、(従来通り) -Version
オプションを使うことで古いバージョンのPowerShellを起動することもできます
cmd >powershell -Version 2.0 -command $PSVersionTable.CLRVersion Major Minor Build Revision ----- ----- ----- -------- 2 0 50727 8935
Visual Studio Codeの設定変更
PowerShell 6.1にはWindows PowerShellで言う所のISEはないのでIDEにはVisual Studio CodeとPowerShell拡張の使用をお勧めします
まず、Visual Studio Codeをインストールし、PowerShell拡張を導入しておきます
その上で標準ターミナルをPowerShell 6.xにするため、Visual Studio Codeのユーザー設定またはワークスペース設定のTerminal › Integrated › Shell: Windowsを C:\Program Files\PowerShell\6\pwsh.exe
に変更します
setting.jsonを直接編集する場合、以下の通りです
// Windows でターミナルが使用するシェルのパス。[シェルの構成について詳細を表示](https://code.visualstudio.com/docs/editor/integrated-terminal#_configuration)。 "terminal.integrated.shell.windows": "C:\\Program Files\\PowerShell\\6\\pwsh.exe"
ちなみにユーザー設定のsetting.jsonを直接編集したい場合、setting.jsonは %APPDATA%\Code\User\setting.json
に存在します
また、PowerShell拡張で使用するPowerShellは上記標準ターミナルの設定とは別にPowershell: Power Shell Exe Pathを C:\Program Files\PowerShell\6\pwsh.exe
に変更します
setting.jsonを直接編集する場合、以下の通りです
// Specifies the full path to a PowerShell executable. Changes the installation of PowerShell used for language and debugging services. "powershell.powerShellExePath": "C:\\Program Files\\PowerShell\\6\\pwsh.exe"
この設定を行わないと標準ターミナルは6.xでも、PowerShell拡張は5.1で実行されてしまいます (1敗)
おまけ: .NET CoreのSDKも導入
.NET CoreのSDKは .NET Framework や別バージョンの .NET Core と共存できます
.NET Downloads for Linux, macOS, and Windows
自分の環境用のインストーラをダウンロードしたら実行します
完了したらインストール状況を確認
cmd >dotnet --version 2.1.402
cmd >dotnet --info .NET Core SDK (global.json を反映): Version: 2.1.402 Commit: 3599f217f4 (以下略)
以上になります