Quantcast
Viewing all articles
Browse latest Browse all 2722

Linux育ちの人間がWindowsでターミナルを使う道

これはなに

Unixコマンドじゃないとやだと駄々をこねる人間がWindowsで生きるために試行錯誤してWSLとかWindowsTerminalとかchocoとかに救命してもらうお話
内容はないよ

今までのWindowsのターミナル事情をおさらいしよう

CMD.exe

  • 見た目のカスタマイズに弱いイメージ
  • 公式的には手放したいのにできなくて放置だったはず(Win7くらいの時)なのに最近いろいろ改善された
  • これ自体に罪はない(はず)

powershell.exe

  • 諸悪の根源(?)
  • スクリプトなのはすごくいいし.Netのオブジェクトとかも叩きやすい
  • コマンドレット長すぎ問題にぶちあたる
  • 方式が違いすぎてこれでCMD置き換えるのは無理だと思う
  • これ自体はいいツールで罪はない(ISEとか付属するし)

Cygwin

  • Unixライクなコマンド使おうとすると一度は通るやつ
  • 全部がCygwinのdllにつながってるのがちょっと...
  • POSIX完全再現を目指しすぎてて重い
  • 最近は嫌がられるイメージ

MSYS2

  • もとはCygwin
  • だけど最近はこっちがおおいイメージ
  • 多分MinGWと一緒に使われるからだと思う(確証なし)
  • もとはCygwinなのでこれでビルドしたのはMSYSでしか動かない

MinGW

  • UnixツールをWindowsネイティブにしましょうプロジェクト(あまり正確ではない)
  • クロスコンパイル環境にはほぼ必須
  • Terminalかって言われるとそうでもない

今のターミナル事情はすごい!

久しぶりに戻ったWindowsのターミナル事情が変わりすぎてまじでびっくりした

Windows Subsystem for Linux (WSL)

こいつやばい
昔あった(今もあるかも)coLinuxみたいな感覚で起動できて(仕組みは全然違うけど)、公式のサポートがついて、多くの人が使ってる(最重要
X11もいれるとWindowsにGNOME Terminalを起動することができる
セットアップはそこらへんに転がってるので検索してLGTMに入れましょう

Git Bash

MinGW+MSYS2だけどGitにくっついてくるのでなんだかんだ使いやすい
ほぼBashのためだけにいれた
chocoで入れるときはオプション打たないとコマンドラインツールはいらないので気を付けよう

Windows Terminal

なにこれ
複数Shell同時に動かせるし、タブもあるし分割もできるし、カスタムがJSONだし、Macのデフォターミナルの5000倍くらいいいと思う(個人的感想)
MSStoreからいれよう

Chocolatey

MacでいうHomeBrew、Debianでいうapt、Fedoraでいうyum
パッケージ管理ツールが成熟して私はうれしいですわよ
いろいろ突っ込みすぎてなにいれたか忘れた
インストール方法:

 Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))

これらを混ぜ合わせると

Image may be NSFW.
Clik here to view.
wsl.PNG

Image may be NSFW.
Clik here to view.
wsl2.PNG

これがWindowsですか...


Viewing all articles
Browse latest Browse all 2722

Trending Articles