Windows10のWindowsTerminalでPowerShellを動かす

windows

Windows10の環境でWindowsPowerShellをタブ化したかった。で、複数タブ化が可能なWindowsTerminalを入れたのでそのメモ。

WindowsTerminalのインストール

まずはmicrosoft本家よりダウンロードしてくる。「入手」を押すとストアのウィンドウが新規で表示されて面倒だが我慢してダウンロードする。またもやキャプチャを取り忘れたが、基本「次へ(Next)」しか押していない。

そしてインストール後に起動した画面がこれ。

よーくみると、新しいクロスプラットフォームの PowerShell をお試しください https://aka.ms/pscore6 と書いてある。もしやWindowsPowerShellって古いのか?と思いバージョンを確認してみる。

PS C:\> $PSVersionTable

Name                           Value
----                           -----
PSVersion                      5.1.18362.1171
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.18362.1171
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1

PowerShellのインストール

PowerShellはどうやら途中でオープンソースになったらしく?最新版は7.xとかになっているようだった。なので最新版を入れてみる。

先ほどの画面にあるURL「https://aka.ms/pscore6」を押すとマイクロソフトのページに飛ぶので、右上の「PowerShellのインストール」のリンクをクリック。

そうするとGitHubのページに飛ばされるので自分の環境に合ったものをダウンロードする。自分の環境はWindows10 Home 64bitだったので「PowerShell-7.1.3-win-x64.msi」を選択。

またもやキャプチャを忘れたが、基本「次へ(next)」を押していくだけでOK。

以下は起動画面。WindowsTerminalには自動で登録されるので、「V(下)」タブを押してどのシェルを起動するか選択可能。

WindowsTerminalとPowerShellの設定変更

WindowsTerminalの設定変更(デフォルト起動シェルの変更)

先にWindowsPowerShellを入れた後にPowerShellを入れたせいか、「+」タブをただ押すとWindowsPowerShellが初めに起動してしまう。PowerShellをデフォルトにしたいので、設定を編集して起動順序を変更する。「V(下)」タブを押して設定を押す。

するとメモ帳で設定ファイルが開かれるので、編集する。書き換える箇所は「defaultProfile」の値で、そこに最初に起動したいシェルのguidをいれればOK。

...
    ///////////////////////////////////////////////////////////////////////////////////
    // ここを起動したいシェルのguidに書き換える
    ///////////////////////////////////////////////////////////////////////////////////
    "defaultProfile": "{574e775e-4f2a-5b96-ac1e-a2962a402336}",
...
    "profiles":
    {
        "defaults":
        {
            // Put settings here that you want to apply to all profiles.
        },
        "list":
        [
            {
                // Make changes here to the powershell.exe profile.
                "guid": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
                "name": "Windows PowerShell",
                "commandline": "powershell.exe",
                "hidden": false
            },
            {
                // Make changes here to the cmd.exe profile.
                "guid": "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}",
                "name": "コマンド プロンプト",
                "commandline": "cmd.exe",
                "hidden": false
            },
            {
                "guid": "{b453ae62-4e3d-5e58-b989-0a998ec441b8}",
                "hidden": false,
                "name": "Azure Cloud Shell",
                "source": "Windows.Terminal.Azure"
            },
            {
                "guid": "{574e775e-4f2a-5b96-ac1e-a2962a402336}",
                "hidden": false,
                "name": "PowerShell",
                "source": "Windows.Terminal.PowershellCore"
            }
        ]
    },
.......

PowerShellの設定変更

次にPowerShellの起動設定を変更する。WindowsPowerShellのパスと似ているので注意。インストールしたばかりの場合はファイルがないので作成する。

[PowerShellのパス]
C:\Users\[ユーザ]\Documents\PowerShell\Microsoft.PowerShell_profile.ps1
[WindowsPowerShellのパス]
C:\Users\[ユーザ]\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1

設定ファイルの中身はこちら。viとかhidemaruとかが立ち上がるようにしている。tab補完などでbeep音がなるのが邪魔だったので設定を入れたのだが、以下だと効果がなかったので、結局サウンドの設定からエラーと警告の音をなしにして解決したので、下の2行の音に関連する設定は不要かも。

set-alias vi 'C:\Program Files\Vim\vim82\gvim.exe'
set-alias hi 'C:\Program Files (x86)\Hidemaru\Hidemaru.exe'
Set-PSReadlineOption -BellStyle None
set bell-style none

コメント

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