UNIXを使う場合,以下のことを理解しておく必要がある.
- UNIXのハードディスク2のファ
イル構造は,図1のようにツリー(木)構造呼ばれる
階層構造になっている.それは,ファイルとディレクトリーから構成さ
れる.
- ハードディスクなどに記録されたデータのまとまりをファイルと言う.
コンピュータが実行することができる命令の集合であるプログラムファ
イルと,コンピュータの利用者が作成した情報を記録しておくデータファ
イルがある.
- ファイルを分類・整理するための保管場所をディレクトリー
3と言う.関連する複数
のファイルをまとめて一つのディレクトリーに入れることにより,効率
的に記憶装置を管理することができる.ディレクトリーの中にさらにディ
レクトリーを作成することもでき,階層構造によって細かい分類を表現
することもできる.
- ディレクトリーには,以下のように表現されるものがある.
- 今,自分が居るディレクトリーを,カレントディレクトリーと言う.
4カレントディ
レクトリーを明示したい場合は,1つのピリオド「.」 で表す.
- カレントディレクトリーの1つ上のディレクトリーを親デレクトリーと
言う.2つのピリオド「..」で,親ディレクトリーを表す.
- カレントディレクトリーの1つ下のディレクトリーをサブデレクトリー
と言う.複数存在することが可能なので,それぞれの名前で表す.
- ユーザー各個人が使用(読み,書き,実行)を許されている最上
位のディレクトリーをホームディレクトリーと言う.
- ログインしたときに入るディレクトリーをログインディレクトリーと言う.
通常はホームディレクトリーと同じである.
図 1:
UNIXのファイル構造とそれを扱うコマンド
|
UNIXではコンピューターに命令する場合,ターミナルからコマンドを打ち込む.ターミナ
ルは,ユーザーがコンピューターに命令を行うウィンドウである.いろいろな命令がある
が,まず諸君は以下の命令を覚える必要がある.
- カレントディレクトリー--自分がいる場所--を表示させるコマンドは,
「pwd」である.このコマンドの由来は,print working directoryである.
- カレントディレクトリーにあるファイルやディレクトリーを表示させるコマンド
は,「ls」である.このコマンドの由来は,listである.
- ほかのディレクトリーに移動するときに使うコマンドは,「cd」である.このコ
マンドの由来は,change directoryである.使い方は,次の通り.
- 親ディレクトリーに移動する場合は,「cd ..」とする.
- サブディレクトリーhogehogeに移動する場合は,「cd
hogehoge」とする.
- ホームディレクトリーに移動する場合は,「cd」とする.
- 人間のわかるC言語のプログラムから,コンピューターがわかる機械語に変換する
作業をコンパイルと言う.コンパイルを行うコマンドは,「gcc」である.
hoge.cというC言語のソースファイルから,fugaという機械語
の実行ファイルを作るためには,以下のようにする.
- 数学関数が含まれていない場合のコンパイルのためのコマンドは
「gcc -o fuga hoge.c」である.
- 三角関数や平方根などの数学関数が含まれている場合のコンパイルのため
には,-lmというオプションが必要である.すると,コマンドは
「gcc -lm -o fuga hoge.c」となる.
プログラムの作成順序は,図
2のようになる.
- 作業用のディレクトリーの作成 まずはプログラムを入れるのディレクトリーをつくる.プログラムをディレクト
リー毎にわけることにより,大量のプログラムを管理する.デスクトップの「ア
カウント名+ホーム」と書かれたアイコンを開いて,右クリックの新しいフォルダー
を選択することにより,ディレクトリーは作成できる.
- エディターによるソースプログラムの記述 ターミナルをダブ
ルクリックして開く.そして,「cd ディレクトリー
名」をタイプすることにより,プログラム作成のディレクトリーに移動する.そし
て,「emacs ソースファイル名.c&」とタイプして,emacs を立ち上げプロ
グラムを書きはじめる.最後の&は,emacsを動作させたターミナルから,コ
マンド入力ができるようにしている.
- コンパイル プログラムを書き終えたら,それを保管する.そ
して,C言語のファイルを機械語に変換する.変換するためには,「gcc
-o 実行ファイル名 ソースファイル名.c」とタイプする.
- 実行 コンパイルが完了したら,「./実行ファイル名」
とタイプして,プログラムを実行する.
ホームページ:
Yamamoto's laboratory著者:
山本昌志
Yamamoto Masashi
平成18年6月7日