なぜCygwinを使うのか
そもそもなぜCygwinなのだろうか。
といえばやはりbash、grep、find、sedなどのツールを使えるところにあります。でもほかにも似たようなことができるツール(競合)があるよね。僕はなぜCygwinを選ぶのだろう。
これまでの遍歴
きっとこれまでの半生に答えがあるかもしれない。WindowsにXの画面を表示するようになった自らの経緯を振り返ってみた。
1999~2000年
仕事でLinuxサーバーを扱いはじめる。当初Windowsからつなぐのにコマンドプロンプト+telnet→途中からHummingbird社の商用Xサーバーを使うようになった。今で言うブラックだったの1年で辞める。
2000~2004年
会社を移る。引き続きWindowsからLinuxを使うという環境。ただXサーバーは無くコマンドプロンプト+telnetであった。
2004~2005年
ある時CygwinというフリーウェアにXサーバーの機能があることを知る。情報も少ない中頑張ってインストール。管理者権限不要なのも良かった。当時はfluxboxという軽量WMをビルドしてつかっていた。調子に乗ってあれこれビルドしていたのが懐かしい。Enlightenmentをソースからビルドしようとしたがどうしてもできなかったのも今となってはいい思い出。
2005~2012年
会社を移りLinuxにつなぐこともなくなった。
2012~2015年
同社にて調査系の仕事が増え、Windowsのコマンドでは対応できなくなる。各種分析・データ処理にRubyを使っていたが、もっと身軽に行いたくgrep、sedなどを使うことにする。当初Linuxサーバーにファイルを送り行っていたが、面倒になりckw+nyaos+MSYSという体制を組んだ。
2015~現在
会社を移る。Web系ゆえLAMP環境は必須、ばんばんLinuxつかう環境になる。Vagrantも使いまくり。手元であれこれするために久々にCygwinを使い始める。xfce4などWMも最初からインストールでき、apt-cygというインストールマネージャーもある、という至れり尽くせりぶりに隔世の感。
競合ツールとの比較
Bash on Ubuntu on Windows
まだまだ情報がすくないです。マイクロソフト製とのことで、IEと同じくVer5くらいになるまで使えないのではないかという固定観念もあります。
MSYS2
Cygwinよりも使いやすいと人気ですが意外と情報が少ないのです。以前使ったときにホームディレクトリが変な場所に作られたのが気持ち悪くって敬遠しています。またchocolatey使おうとあるのですが、ポータブル環境が良いです。
仮想環境上でのLinux
愛機がメモリ2GB、HDD100GBと非力なので厳しいです。起動も遅いです。また記憶があやふやですが、共有フォルダに向けてシンボリックリンクを張れなかったような。
Docker
僕の目指す目的で使えるんでしょうか。どうなのでしょうか。興味ありますが勉強する時間がなく手を付けられていません。
キーワード検索ヒット件数比較
仮想マシン以外の選択肢について、Googleでの検索したところ以下の通り。Cygwinの圧勝となっています。
1.Cygwin→ 4,160,000件
2.MSYS2→136,000件
3.”Bash on Windows”→179,000件(ダブルクォートで囲ったもの)
結論
あれこれ理屈こねてますが個人的好みでCygwinです。