テクノロジー

Windows Terminal起動時に任意のShell(WSL)を開く設定

Windows TerminalがPreview版でインストールできるようになりました。今回はTerminal起動時に任意のShellを開く設定について説明します。また、例としてWSLで設定するようにしてみたいと思います。

デフォルトではPowerShellが開かれる

Windows Terminalで初回起動を行うとWindows PowerShellが自動的に開かれます。

他のShellに変更したい場合は、タブ中の [V] のマークをクリックするとプルダウンリストが表示されるので、こちらから選択します。デフォルトでは4つのShellが設定されています。

デフォルトで設定されているShellは以下の通りです。

  • PowerShell
  • コマンドプロンプト(cmd)
  • Azure Cloud Shell
  • WSL(Windows Subsystem for Linux)のUbuntu

例えば、上図のとおりWSLを選択した場合は、以下のように新しいタブでWSLのターミナルが開かれます。

起動時に開くプロファイル設定項目 defaultProfile

起動時に開くShellを設定する場合は、タブ中の [V] のマークをクリックし、リストから Settings をクリックします。すると設定ファイルがテキストエディタで開かれます。

起動時に開くShellについてはそれぞれプロファイルが用意されています。設定を行う場合は、デフォルトとして設定されているプロファイルの指定を変更してあげればOKです。

起動Shellのデフォルトの指定は、以下に示すような globals という設定項目の中の defaultProfile という設定項目にてされています。設定値はプロファイルの guid です。

{
    "$schema": "https://aka.ms/terminal-profiles-schema",
    "globals" : 
    {
        "alwaysShowTabs" : true,
        "copyOnSelect" : false,
        "defaultProfile" : "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
        "initialCols" : 120,
        "initialRows" : 30,
        "keybindings" : 
        ……

例えば、PowerShellのプロファイルは以下のように定義されていて、 defaultProfile と同じ guid 値が設定されていることがわかります。

 {
    "acrylicOpacity" : 0.5,
    "background" : "#012456",
    "closeOnExit" : true,
    "colorScheme" : "Campbell",
    "commandline" : "powershell.exe",
    "cursorColor" : "#FFFFFF",
    "cursorShape" : "bar",
    "fontFace" : "Consolas",
    "fontSize" : 10,
    "guid" : "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
    "historySize" : 9001,
    "icon" : "ms-appx:///ProfileIcons/{61c54bbd-c2c6-5271-96e7-009a87ff44bf}.png",
    "name" : "Windows PowerShell",
    "padding" : "0, 0, 0, 0",
    "snapOnInput" : true,
    "startingDirectory" : "%USERPROFILE%",
    "useAcrylic" : false
},

例:起動時にWSLを開くようにする設定

例として、起動時にWSLを開くように設定をしてみます。

まず、WSLのプロファイルは以下のように定義されているので、guid をコピーしておきます。

{
    "acrylicOpacity" : 0.5,
    "closeOnExit" : true,
    "colorScheme" : "Campbell",
    "commandline" : "wsl.exe -d Ubuntu",
    "cursorColor" : "#FFFFFF",
    "cursorShape" : "bar",
    "fontFace" : "Consolas",
    "fontSize" : 10,
    "guid" : "{2c4de342-38b7-51cf-b940-2309a097f518}",
    "historySize" : 9001,
    "icon" : "ms-appx:///ProfileIcons/{9acb9455-ca41-5af7-950f-6bca1bc9722f}.png",
    "name" : "Ubuntu",
    "padding" : "0, 0, 0, 0",
    "snapOnInput" : true,
    "startingDirectory" : "%USERPROFILE%",
    "useAcrylic" : false
}

次に globals の中の defaultProfile という設定項目にWSLプロファイルの guid を設定します。

{
    "$schema": "https://aka.ms/terminal-profiles-schema",
    "globals" : 
    {
        "alwaysShowTabs" : true,
        "copyOnSelect" : false,
        "defaultProfile" : "{2c4de342-38b7-51cf-b940-2309a097f518}",
        "initialCols" : 120,
        "initialRows" : 30,
        "keybindings" : 
        ……

テキストエディタを保存して、Windows Terminalを再起動するとWSLが自動起動するようになります。

-テクノロジー
-, ,

© 2020 いちたどん.com