24時間365日フルマネージドホスティングサービスのデイーネット

Windows7環境にLinuxコマンド環境を作ってみた。

はじめましてTヨシダと申します。

業務ではマネージャ業を中心にしている関係上、コンソールでの作業はここ数年ほとんどしておらず、 Windows7上でEXCELで資料作成の機会が多く、その資料のデータを成形する過程で、Linuxホストにデータを置いて、 成形するためにLinuxコマンドを使い、その成形したデータをまたWindowsに持ってくることが多いので、 いっそのことWindows環境にLinuxコマンド環境を作ってしまおうと考えた次第です。

種を明かすとminttyを入れるだけなので、業務でgitを使っていらっしゃる方は、 git for windowsでやる方が良いと思います。(ベースは後述のMSYS2と同一)

余計なものをインストールしたくないので、MSYS2で進めたいと思います。
mintty自体は、Cygwinとか、Puttyでも使われているものです。

やりたいこと

  • いちいちLinuxホスト上にデータを置かなくても、Windows7上で、grepやsort等のコマンドを実行してデータ成形が出来るようにしたい。
  • 足りないコマンドは追加でインストールしたい。

やったこと

事前準備
自身のPCの稼働環境を確認
『コントロール パネル\すべてのコントロール パネル項目\システム』から、『システムの種類』を確認。
64bit環境でした。


MSYS2をインストール
こちらでEXEを取得。

64bit環境なので、x86_64の方のexeをダウンロード

EXEを普通にインストール。
レジストリは介さないので、好きな場所にインストール
※以下説明用に上記でインストール先に指定したフォルダを、以下、『インストールフォルダ』と記載します。


起動とログイン時ディレクトリの変更について
スタートアップにショートカットができるので、そこから起動する。

また、インストールフォルダを見ると、mingw32.exe、mingw64.exe、msys2.exeなど、exeがいくつかあると思いますが、msys2.exeを起動しておけば問題無し。

起動時のカレントディレクトリには、/home/[Windowsのログインユーザ名]になっています。
これはインストールフォルダ配下の『home』の下を見ると、このWindowsのログインユーザ名でフォルダが作成されています。

これを変更したい場合は、インストールフォルダ/etc/fstabを以下のように編集します。
※例えば、C:\tmp以下にログインしたい場合

---------------------------------------

C:\tmp /home/[Windowsのログインユーザ名]

---------------------------------------

これで開き直すと、C:\tmpが起動時のディレクトリとなります。
勝手に.bash_profileや、.bashrcなどのファイルが起動時にコピーされます。(便利)

【補足説明】
  • インストールフォルダが、Linuxでいう/(ルートディレクトリ)になる。
  • それを起点に、/home/[Windowsのログインユーザ名] が開始時のディレクトリとなる。
  • 変更したい場合は、/home/[Windowsのログインユーザ名]/etc/fstab をいじる。
  • フォントや右クリック時の挙動などは、画面上側右クリック時からOptionで設定のこと。(説明省略)

コマンドの追加

初期状態であるコマンドは、インストールフォルダは以下のusr/binの下にあるファイル群が対象です。
または、『pacman -S -i』コマンドで確認のこと。

ちなみに、Windows環境なのでvim使うことも無いとは思いますが、一応インストールしておきます。
コマンド追加の参考になれば。

MSYS2で入れたminttyでのパッケージ管理はpacman。
CentOSで言うところのyumみたいなもの。

pacmanのコマンドはこちらのチートシートが参考になります。

パッケージの検索
$ pacman -Ss vim
---------------------------------------
msys/vim 8.0.1305-1 (editors)

msys/vimpager 2.06-1
Use ViM as PAGER
msys/vimpager-git r279.bc5548d-1
Use ViM as PAGER
---------------------------------------

パッケージのインストール
$ pacman -S vim
---------------------------------------
依存関係を解決しています...
衝突するパッケージがないか確認しています...

パッケージ (1) vim-8.0.1305-1

合計ダウンロード容量: 6.49 MiB
合計インストール容量: 41.66 MiB

:: インストールを行いますか? [Y/n] Y
---------------------------------------

動作確認
$ vim sample.txt

無事vimコマンドが有効になっていることが確認できました。

ついでにssh端末としても使おうと思う。

$ pacman -S openssh
---------------------------------------
依存関係を解決しています...
衝突するパッケージがないか確認しています...

パッケージ (2) heimdal-1.5.3-9 openssh-7.5p1-1

合計ダウンロード容量: 1.20 MiB
合計インストール容量: 6.74 MiB

:: インストールを行いますか? [Y/n] Y
---------------------------------------
これでSSHコマンドも使える。

インストールされているコマンドの確認

(厳密ではないけど)だいたい以下で確認できます。

$ pacman -Ql | awk '{print $1}' | uniq | sort
---------------------------------------
bsdcpio
bsdtar
bzip2
ca-certificates
catgets
coreutils
crypt
curl
dash
file
filesystem
findutils
flex
gawk
(以下、省略)
---------------------------------------

以上。

  • このページの先頭へ

  • 東京本社
    〒105-0001東京都港区虎ノ門2-3-22 第一秋山ビル5F
    TEL:03-3591-8887 FAX:03-3591-8886
  • 大阪本社
    〒541-0041 大阪市中央区北浜2-6-11北浜エクセルビル5F
    TEL:06-6231-8887 FAX:06-6231-8897

  • 認証範囲はこちらをご覧ください。

Denet logo

クラウドサービス・データセンタ・高機能専有サーバ・共有サーバホスティングサービス 株式会社ディーネット
dot_bar