【VSCode】ターミナルでコマンドプロンプトを使う
更新日:2023/02/06
VS Codeでターミナルを開くと、シェルの機能が使える。
Node.jsなどでnpmを実行するときなど、便利です。
しかしWindowsではWindows PowerShellが起動します。
僕は今までコマンドプロンプトしか使ったことが無いのですが、一部のコマンドの仕様が異なるため時々途方にくれたりします。
そこで、ターミナルで起動するシェルを Windows PowerShell からコマンドプロンプトに切り替えてみます。
Windows Powershell が使いにくい
Windowsで、VS Code内のターミナルを開くと Windows Powershell が起動します。
環境変数のPATHを確認したくて set を実行したら、表示してくれない。
Windows Powershell はコマンドプロンプトと少し仕様が違うようですね。
しかし、これから問題があるごとにWindows Powershellについて調べるのは、非常に面倒です。
コマンドプロンプトに切り替えたいですね。
コマンドプロンプトに切り替える
シェルを切り替えるには、ターミナルタブの右側にある、「 ˅ 」をクリックします。
シェルを選択する画面が表示されるので、「Command Prompt」を選びます。
コマンドプロンプトが起動します。
同時に Windows Powershell が動作しています。
ゴミ箱アイコンをクリックして、停止させましょう。
これでコマンドプロンプトできました。
setコマンドも、いつもの結果を表示してくれました。
しかし、ここでの操作は、記憶してくれないようです。
VS Codeを終了して再起動すると Windows Powershell に戻ってしまいます。
初期設定をコマンドプロンプトに変更する
VS Codeを起動時にコマンドプロンプトをシェルとして利用するなら、設定を変更する必要があります。
設定画面で「Terminal › Integrated › Default Profile: Windows」を検索してください。
この項目は、Windowsで使用する規定のプロファイルを指定します。
ここでは「Command Prompt」を選択します。
プロファイルの意味が少しわかり難いですが、ターミナルで使用するシェルや起動時の引数などを定義しておくものです。
「Command Prompt」を選択すると、setting.jsonに次のような値が追加されます。
"terminal.integrated.defaultProfile.windows": "Command Prompt"
"Command Prompt" の詳細は、terminal.integrated.profiles.windows で定義できます。
設定画面で「terminal.integrated.profiles.windows」を検索します。
settings.jsonで編集をクリックすると、次の値が追加されます。
"terminal.integrated.profiles.windows": {
"PowerShell": {
"source": "PowerShell",
"icon": "terminal-powershell"
},
"Command Prompt": {
"path": [
"${env:windir}\\Sysnative\\cmd.exe",
"${env:windir}\\System32\\cmd.exe"
],
"args": [],
"icon": "terminal-cmd"
},
"Git Bash": {
"source": "Git Bash"
}
}
"Command Prompt"のPathや、argsを変更することでカスタマイズできます。
※規定値で使用するときは"terminal.integrated.profiles.windows"を追加する必要はありません。
更新日:2023/02/06
関連記事
スポンサーリンク
記事の内容について
こんにちはけーちゃんです。
説明するのって難しいですね。
「なんか言ってることおかしくない?」
たぶん、こんなご意見あると思います。
裏付けを取りながら記事を作成していますが、僕の勘違いだったり、そもそも情報源の内容が間違えていたりで、正確でないことが多いと思います。
そんなときは、ご意見もらえたら嬉しいです。
掲載コードについては事前に動作確認をしていますが、貼り付け後に体裁を整えるなどをした結果動作しないものになっていることがあります。
生暖かい視線でスルーするか、ご指摘ください。
ご意見、ご指摘はこちら。
https://note.affi-sapo-sv.com/info.php
このサイトは、リンクフリーです。大歓迎です。