本授業で使うUNIX(Linux)のディレクトリー構造は,図
1のようになっ
ている.これは,木構造と呼ばれる階層構造で,図を反対にすれば,ちょうど木の幹と枝
のようになっていることが分かる.木は根(root)が必ずあり,そこから,枝が延び,節で
分かれ,末端には葉がある.「/」ルートディレクトリ(記号としては「スラッシュ」と発音)
が根に相当し,その他のディレクトリが節に,ファイルが葉に相当する.ディレクトリ
(Directory)はWindowsのフォルダに相当するもので,他のファイルあるいはディレクトリを
格納できる.ディレクトリを用いる事により,種類別にファイルを整理するとともに,階
層別にそれらの管理ができるので便利である.
UNIXに限らず,WindowsやMacintoshもファイルの管理にはツリーと呼ばれるデータ構造を
使っている.ただし,UNIXはファイルの管理が厳しいが,WindowsやMacintoshはかなり甘
い.前者は,複数のユーザーが使うことが前提としているため,ファイルの操作の権限を
細かく設定できる.後者は,もともと個人の使用が前提なので,そのあたりはいい加減である.
諸君が,これから使うUNIXのディレクトリーやファイルの取り扱いについては,以下の特
徴がある.これらを理解して,使うと便利である.
- UNIXのハードディスク2のファ
イル構造は,図1のようにツリー(木)構造呼ばれる
階層構造になっている.それは,ファイルとディレクトリーから構成さ
れる.
- ハードディスクなどに記録されたデータのまとまりをファイルと言う.
コンピュータが実行することができる命令の集合であるプログラムファ
イルと,コンピュータの利用者が作成した情報を記録しておくデータファ
イルがある.
- ファイルを分類・整理するための保管場所をディレクトリー
3と言う.関連する複数
のファイルをまとめて一つのディレクトリーに入れることにより,効率
的に記憶装置を管理することができる.ディレクトリーの中にさらにディ
レクトリーを作成することもでき,階層構造にすることができる.諸君はこれを
上手に使いファイルをわかりやすく管理しなくてはならない.
- ディレクトリーには,以下のように表現されるものがある.
- 今,自分が居るディレクトリーを,カレントディレクトリーと言う.
4カレントディ
レクトリーを明示したい場合は,1つのピリオド「.」 で表しま
す.
- カレントディレクトリーの1つ上のディレクトリーを親デレクトリーと
言う.2つのピリオド「..」が,親ディレクトリーを表す.
- カレントディレクトリーの1つ下のディレクトリーをサブデレクトリー
と言う.複数存在することが可能なので,それぞれの名前で表す.
- ユーザー各個人が使用(読み,書き,実行)を許されている最上
位のディレクトリーをホームディレクトリーと言う.
- ログインしたときに入るディレクトリーをログインディレクトリーと言う.
通常はホームディレクトリーと同じである.
- ファイルやフォルダの所在を示すものをパスと言う.ファイルやフォ
ルダのハードディスクでの住所みたいのものである.それは,ディレク
トリー名を書き並べることにより表すことができ,その区切りには
「/」(スラッシュ)を使う.
- パスの表し方は,2通りある.最上位のルートディレクトリー
「/」から表す絶対パスと,カレントディレクトリーから表す相
対パスである.例えば,図1のyamamotoをカレント
ディレクトリーとし,hello.cのパスは,
|
絶対パス |
/home/user/e99999/work/hello.c |
|
相対パス |
../e99999/work/hello.c |
となる.これを見て分かるように,絶対パスの場合,カレントディレクトリーに関
係なく,一意に決まる.それに対して,相対パスは,カレントディレクトリーに依
存する.
また,図1には,それを扱うためのコマンドも書いてある.コマンド
については,次に勉強する.
- [練習1]
- 図1のhogehogeをカレントディレク
トリーとして,hello.cを絶対パスと相対パスで示せ.
- [練習2]
- 同様に,図中のprogを絶対パスと相対パスで示せ.
図 1:
UNIXのファイル構造とそれを扱うコマンド
|
ホームページ:
Yamamoto's laboratory著者:
山本昌志
Yamamoto Masashi
平成19年4月10日