これらのキーワードがハイライトされています:$1

Windowsで使えるターミナルとシェル anchor.png

Windowsで使えるターミナルとシェルについて説明する。

Windowsでも意外と選択肢は多い。ターミナルとシェルの組み合わせで,自分好みの環境を構築出来る。

Page Top

ターミナルとは anchor.png

ターミナル,ターミナルエミュレータ,端末エミュレータ,コンソール,などと呼ばれているもの。
Windowsのコマンドプロンプトもこの部類に入るツール。

テキストのみの画面の見た目やキーボードでの操作を行っている部分がターミナル。
ターミナルだけでは何も出来なくて,シェルと一緒に動作するようになっている。

代表的なターミナルには,以下のようなものがある。

Page Top

シェルとは anchor.png

シェル(Shell)は,OSとユーザーとのインターフェースを担うソフトウェアのこと。
特にコマンドラインタイプのようなインタプリタのインターフェースを持つものをシェルと言っている。

シェルを使って,他のアプリを起動させたり,終了させたり,入出力をリダイレクトさせたり,バッチファイルを実行したりする操作を行うことが出来る。

代表的なシェルには,以下のようなものがある。

Page Top

Windowsで使えるターミナル環境 anchor.png

Page Top

mintty anchor.png

MSYS/MSYS2,Cygwin,PuTTYなんかで使われている。
以下のような特徴がある。

  • xtermと互換性がある。
  • 256色(8bit),TrueColor(16bit)をサポート。
  • UTF-8をサポート。
  • Windows IMEをサポートしている。多バイト文字を使える。
  • 画像が表示できる。
  • フルスクリーンになる。
  • コピペがわりと簡単。
  • テキストやファイル,フォルダのドラッグ&ドロップに対応。
  • Ctrl+clickでURLを開ける。
  • 背景を透過できる。
  • レジストリを使わない。

動作が軽いのが良い。まあ,とりあえずこれを使っておけばいいのかもしれない。

minttyでタブ機能が必要な場合は,tmuxを導入すれば可能になる。

Page Top

ConEmu anchor.png

いろいろな設定ができ,かなり自由度が高い。タブが使えて複数ターミナルを切り替えながら使用できる。

Page Top

cmder anchor.png

ConEmu(ターミナル)とclink(シェル)とGit for Windows(各種コマンド)が入っているパッケージ。
最低限の機能のmini版と,各種コマンドを含んだfull版がある。

  • タブが使える。
  • タブの入力をロックできる。
  • 履歴を検索できる。
  • aliasを設定できる。
  • Monokaiカラー対応。
  • PowerShellモードがある。
Page Top

ConsoleZ anchor.png

Console2の後継アプリケーション。
ConEmuは,設定がいっぱいあってよくわからんと思った人には,ConsoleZがオススメ。見た目も操作も手軽。

Page Top

ckw-mod anchor.png

ckwの後継アプリケーション。日本人が開発しているので日本語の扱いはバッチリ。なんだけど,Unicodeには未対応。
背景画像設定,透過,シェル指定と,やりたいことは一通り出来る。

Page Top

Hyper anchor.png

Electron製のターミナル。HTML5とJavaScriptで拡張できる。日本語には未対応。x86版も無い。

Page Top

Qonsole anchor.png

Quake(ゲームじゃん)ライクなターミナル。
ショートカットキーで,スライド表示される。シェルの指定も可能。

Page Top

MobaXterm anchor.png

どちらかというとSSHクライアントみたいだが,bashが使える。
BusyBoxベースで,Cygwinとの連携とも可能になっていて,かなり高機能なターミナル。

Page Top

MobaXterm anchor.png

Windowsでのcygwinのターミナルに代わるターミナル環境。

Page Top

CygTerm anchor.png

Cygwin環境が必要。
TeraTerm,PuTTY,Poderosaなどのログインシェルを指定できないSSHなターミナルを,Cygwinの環境へ接続するツール。
TeraTermなどに同梱されていることが多い。TeraTermでは,メニューからFile => Cygwin connection [ALT + G]で使用できる。

Page Top

SSH/シリアル通信クライアント anchor.png

SSHでリモートコンピュータに接続する時に使用するアプリケーション。

  • RLogin
  • Poderosa
  • TeraTerm
  • PuTTY(KiTTY)
Page Top

Windowsで使えるシェル環境 anchor.png

Page Top

MSYS2 anchor.png

MSYS2は,WindowsにPosix環境を使えるようにするためのツール群。
MSYS2のターミナルは,minttyが標準で使われていて,シェルはbashになっている。MSYS2を導入すれば,多くのPosixコマンドが使用できるようになる。

パッケージマネージャとしてpacmanを採用しているので,足りないコマンドがあればpacman -S [name]ですぐにインストールできる。

Page Top

Git for Windows anchor.png

Windowsで使用できるGitクライアントなのだが,MSYS2をベースに使っているのでPosixコマンドが使用できる。シェルのbashも含まれている。
Windowsでgitを使う場合は,通常これをインストールしているはず。

Page Top

Cygwin anchor.png

CygwinはWindowsでPosix環境を使用できるようにする環境。Windowsに無いPosix APIをcygwin1.dllでエミュレートして実行できる環境を構築できる。
目的が,WindowsでPosix(Unix)を使えるようにするための環境。

シェルはbashが使われている。

Page Top

PowerShell anchor.png

Windows7からデフォルトで入っているシェルで,コマンドプロンプト(cmd.exe)の後継というようなツール。
.NETライブラリも使えたり出来て,かなりいろいろなことが出来る。しかし,コマンド表記が独特でなかなか馴染めない。

問題は,Windowsでしか使えないこと。(オープンソース化されて,Linuxでも使えるようになった?)

Page Top

Bash on Ubuntu on Windows anchor.png

Windows 10のUpdateで使えるようになったWSL(Windows Subsystem for いぬx)上で動くシェルのbash。 bash自体はUbuntuバイナリだが,WindowsのカーネルのサブシステムでPosixをエミュレートしている。

いろいろ制限はあるが,手軽にLinuxコマンドが使用できるようになった。

Page Top

BusyBox anchor.png

標準的なUnixコマンドを単一ファイルで提供するすごいソフト。
シェルにはash(正確にはbusyboxだが)が使用できる。ashは軽量低機能が特徴のシェルで,まあ普段使いにはあまり向かない。
組み込みLinuxでは,必ずと言っていいほど使われている。

Page Top

gow anchor.png

Gnu on Windowsのこと。多数のGNUコマンドが使える。
シェルはbash。

Page Top

UnxUtils anchor.png

多数のGNUコマンドが使える。インストールはzipアーカイブを解凍してパスを通すだけ。
残念ながら日本語やUTF-8には未対応。

Page Top

clink anchor.png

bash風なcmd.exeの代替ソフトウェア。cmderでも使用されている。
Luaで拡張できる。

Page Top

NYAGOS anchor.png

Nihongo Yet Another GOing Shellのこと。珍しい日本人開発のシェル。
Luaで拡張できる。

Page Top

その他 anchor.png

環境によっては役に立つソフトのリストです。

Page Top

GnuWin32 anchor.png

grepやsedなどのGnuコマンドだけ必要な人は,これで良い。シェルは含まれていない。

Page Top

winpty anchor.png

minttyを使うと,Windowsでは対話型コマンドがうまく動作しなくなる。
sqlite3,node.js,gitなどは,minttyではうまく動かなかったり,日本語が文字化けしたりする場合がある。
このような時に,winptyをかませてminttyを使うと,これらが解決する。

Page Top

cocot anchor.png

ttyの前に割り込んで,文字コード変換を行うツール。
cocot bash,cocot ssh,cocot ping,のようにして使う。

Page Top

iconv anchor.png

文字コード変換を行うツール。
WindowsではSJISなのだが,PosixツールではUTF-8が標準となっているものが多い。
こんな時に文字化けが発生することがあるが,S-JISとUTF-8を変換する時に使用する。

下記のようにして使うとよい。

function wincmd()
{
    CMD=$1
    shift
    $CMD $* 2>&1 | iconv -f CP932 -t UTF-8
}
alias ipconfig='wincmd ipconfig'
Page Top

nkf anchor.png

iconv同様,文字コード変換を行うツール。

Page Top

CygwinとMSYSとMinGWについて anchor.png

CygwinとMSYS2 + MinGWの環境がよく比較されているので、それらを簡単にまとめてみた。

Page Top

Cygwin anchor.png

Windows上で完全なPosix環境を目指して作成されたソフトウェアおよびコマンド群,シェル環境。

cygwin1.dllが,Posixシステムコールをエミュレーションしている。
Posixシステムコールを利用するものは,cygwin1.dllに依存していまうという問題があるが,Linux・Unixと高い互換性がある。

ターミナルはmintty,シェルはbash,その他に多数のコマンドが含まれている。
もちろん,GCCやPerlなどもインストーラーで組み込むことができる。

Page Top

MSYS/MSYS2 anchor.png

MinGW/MinGW64を使用する時に開発環境としての多くの保管プログラムをパッケージしたソフトウェア。

ターミナルはmintty,シェルはbash,その他に多数のコマンドが含まれている。

MSYS2はMSYSをフォークして改良している物。

MSYS2ではpacmanという汎用パッケージマネージャが使用できる。MinGW/MinGW64を簡単にインストールできる。

Page Top

MinGW/MinGW64 anchor.png

Windowsで利用できるGCC。WinAPIヘッダーやlibcなどのライブラリも含まれている。

MinGWは32bitバイナリしか作成はできないが,MinGW64では32bit/64bitどちらのバイナリも作成できる。

MinGW/MinGW64はGCCなので,Posix環境であるMSYS/MSYS2,Cygwinから使用できる。
Cygwinで使用した場合,cygwin1.dll非依存のWindowsネイティブアプリケーションを作成することも出来る。


新しくコメントをつける

題名
ゲスト名
投稿本文
より詳細なコメント入力フォームへ

トップ   凍結 差分 バックアップ 複製 名前変更 リロード   ページ新規作成 全ページ一覧 単語検索 最新ページの一覧   ヘルプ   最新ページのRSS 1.0 最新ページのRSS 2.0 最新ページのRSS Atom
Counter: 16, today: 2, yesterday: 2
最終更新: 2024-05-01 (水) 10:16:58 (JST) (17d) by yuji