Open10

Windowsで使えるShell

masincmasinc

基本

ターミナルは Windows Terminalを想定。

基本的に chcp コマンドで文字コードの設定は行わない。
cmd や PowerShell 以外のシェルでは問題が起きることが多い。
逆に上記のシェルだけで完結するのであれば変えてもよい。

他のコマンド

  • scoop

    Windows用のパッケージマネージャー、ここで紹介するコマンドはほとんどインストールできて便利。

  • busybox

    coreutils の便利コマンドを使える。

  • ripgrep
    モダンな grep コマンド

  • dust

    モダンな du コマンド

  • fd

    モダンな find コマンド

  • lsd

    いい感じに色付けしてくれる ls コマンド

    ちなみに exa は Windows非対応

  • starship

    いい感じにプロンプトの拡張をしてくれる。
    ここで紹介する Shell はすべて対応している。

  • procs

    モダンな ps コマンド

  • bottom

    モダンな top コマンド

  • jq

  • zoxide

  • fzf

masincmasinc

cmd

Windows 標準シェル
さすがに辛いので配布用以外では使いたくない。
配布用の場合でも最低限の操作後 PowerShellにすぐにコマンドを渡したい。

masincmasinc

PowerShell

Windows 標準搭載のものと PowerShell Core がある。
標準では ps1 ファイルが実行できないので、配布用にする際には cmd から -ExecutionPolicy オプションで実行を許可する必要がある。

コマンド覚えられない。 Windowsサーバー運用をすれば覚えられるのかな。

masincmasinc

Git Bash, MSYS2

遅いのであまり使いたくない。
PowerShellが禁止されている環境で仕方なく使う

masincmasinc

WSL

Windows側のファイルを操作する目的なら WSL1 のほうが早い。
Linux側のファイルシステムで完結するなら WSL2 でよい。

Linuxなので基本的にほぼ全てのShellが使えることや、Windows特有の問題が発生しずらい。

Bash, Zsh, Fish を使うなら現状これかなと思っている。

masincmasinc

Xonsh

Python で拡張可能な Shell。

Pythonに慣れているのであれば、好きなように拡張ができるので便利。

Pythonのモジュールや関数などを直接 Shellから利用できたりかなりいい感じ。

https://xon.sh/