Cygwin で便利な4つのコマンド

Cygwin World
Cygwinでよく使っているコマンドです。先のShockShell の影響もあって、Cygwin 関連のアクセスが多いので、ssh、scp などの必須のコマンドとは別に、Cygwin で使うと便利なコマンドをまとめました。

apt-cyg

Linux の yum、apt-get に該当するコマンドで、apt-cyg を使えば setup.exe が不要。パッケージの管理が10倍簡単になります。Cygwin はsetup.exe 経由でのパッケージ管理がもっとも煩わしいので、かなり役立ちます。apt-cyg は以下の方法でインストールします。

wget http://apt-cyg.googlecode.com/svn/trunk/apt-cyg
mv apt-cyg /usr/bin
chmod +x /usr/bin/apt-cyg

apt-cyg については以下にまとめてあります。
​​http://ishihara.asia/cygwin-apt-cyg-でyum、apt-get-のようにパッケージを管理.html

cygcheck

パッケージのバージョンなどを簡単に確認できます。

-c オプションの後にパッケージ名を入力するとバージョンとパッケージのステータスを返してくれます。

$ cygcheck -c whois
Cygwin Package Information
Package              Version        Status
whois                5.0.26-1       OK

パッケージのファイルがロストしている場合はStatus が「Incomplete」となり、状態を確認できます。
rpm -q とか、rpm -V あたりに相当するコマンドです。

引数を指定しないで実行すると関連するパッケージの一覧を返します。

$ cygcheck whois
Found: C:\cygwin64\bin\whois.exe
C:\cygwin64\bin\whois.exe
  C:\cygwin64\bin\cygwin1.dll
    C:\Windows\system32\KERNEL32.dll
      C:\Windows\system32\API-MS-Win-Core-RtlSupport-L1-1-0.dll

whois

言わずと知れたドメインの検索コマンドですが、Cygwin で利用できると激しく便利です。
whois はapt-cyg を使うと一発でインストールできます。

apt-cyg install bind-utils

asia ドメインなどがデフォルトで検索できない場合には、Whoisサーバを -h で指定して検索する必要があります。

whois -h whois.nic.asia ishihara.asia

ブラウザ経由よりもはるかに効率がよいのでお勧めです。

whois サーバの一覧はこちら
http://www.cman.jp/network/support/domain_list.html

find

これもLinux と同じですが、Windows だとファイルを探すのに苦労するので、find は重宝します。
find コマンドは

find オプション ディレクトリ(検索開始) 検索条件

が基本です。ディレクトリの位置を指定しない場合はカレントディレクトリが検索の開始位置になります。

ファイル名で検索する場合は、-name オプションを利用します。find ではアスタリスクが利用できます。

find /home/ishihara -name *.html

-name の前にエクスクラメーション「!」を付けると、-name で指定した文字列を含まないファイルを返します

find /home/ishihara ! -name html

-mtime を指定すると最終更新日による検索できます。3日以内に修正されたファイルを探す場合は、

find /home/ishihara -mtime -3

のように-mtime -数字、ちょうど3日前 -mtime 3、3日以前 -mtime +3 のようにオプションを指定します。

日付以外にもファイルのサイズで指定できるのも便利です。512KB 以上のファイルを探す場合には、
find /home/ishihara -size +512k
のように指定します。MB の場合には、-size +5M です。