ツール

CygwinからWindowsのCドライブにアクセスする方法

CygwinはWindowsOS上にインストールすることで、Unixライクにコマンドラインで操作可能にするツールです。

インストールした際、Cygwinのルートディレクトリはインストール時に指定したフォルダになるので、CygwinからではCドライブなどのルートディレクトリより上位のディレクトリは、通常の操作では見えないようになっています。

しかしCygwinのコマンドラインツールからでも、ちゃんとWindowsのCドライブにアクセスする方法が用意されています。

 

Cドライブにアクセスする方法

サンプルのフォルダ構成を例に説明します。

Windowsからみたフォルダ構成は以下のとおりになっているとします。

コンピュータ
  |
  |_C:\(Cドライブ)
  |   |_ PrefLogs\
  |   |_ Program Files\
  |   |_ Program Files (x86)\
  |   |_ Windows\
  |   |_ ユーザ\(Users)
  |   |   |_ user\(ユーザ専用フォルダ)
  |   |   |_ パブリック\
  |   |
  |   |_ cygwin64\(Cygwinのルートディレクトリ)
  |       |_ bin\
  |       |_ dev\
  |       |_ etc\
  |       |_ home\
  |       |   |_ user\
  |       |       |_ .back_bashrc
  |       |       |_ .bash_history
  |       |       |_ .bash_profile
  |       |       |_ .bashrc
  |       |_ lib\
  |       |_ package\
  |       |_ sbin\
  |       |_ tmp\
  |       |_ usr\
  |       |_ var\
  |       |_ Cygwin.bat
  |       |_ Cygwin.ico
  |       |_ Cygwin-Terminal.ico
  |
  |_D:\(Dドライブ)

これが、Cygwinからみたディレクトリ構成は以下のとおりです。

/(ルートディレクトリ)
  |_ bin/
  |_ dev/
  |_ etc/
  |_ home/
  |   |_ user/
  |       |_ .back_bashrc
  |       |_ .bash_history
  |       |_ .bash_profile
  |       |_ .bashrc
  |_ lib/
  |_ package/
  |_ sbin
  |_ tmp/
  |_ usr/
  |_ var/

つまり、本来ならCygwinの/(ルートディレクトリ)の上にあるはずの「Program Files」フォルダや「ユーザ(Users)」フォルダが見えず、あたかもアクセスできないように見えます。

実際に「$ cd /../」などとやってもアクセスできません。

 

しかし以下のコマンドを実行するとWindowsのCドライブにアクセスすることが可能です。

# Cドライブにアクセス
$ cd /cygdrive/c/

# Dドライブにアクセス
$ cd /cygdrive/d/

つまりCygwinでの「/cygdrive/c/」ディレクトリがWindwosのCドライブに該当します。

もっと細かいことを言うと、 

  • Cygwin「/cygdrive/c/」 = Windwos「Cドライブ」
  • Cygwin「/cygdrive/d/」 = Windwos「Dドライブ」
  • Cygwin「/cygdrive/c/cygwin64/」 = Cygwin「/(ルートディレクトリ)」

ということになります。

 

個人的なオススメ設定として、よくアクセスするWindowsのフォルダに対してシンボリックリンクを作っておくと便利です。

# Cドライブ
ln -s /cygdrive/c/ ~/cdr
# デスクトップ
ln -s /cygdrive/c/Users/user/Desktop ~/desktop
# マイドキュメント
ln -s /cygdrive/c/Users/user/Documents ~/mydoc

このようにしておくことで、Cygwinのホームディレクトリから直接CDコマンドでデスクトップやマイドキュメントにアクセスできます。

以上です。

-ツール