[小西ホームページ]   [目次・索引]   [前の授業]   [次の授業]

コンピュータIID(UNIXとHTML)第2回

目次
2.1 コマンドの形式
2.1.1 コマンドの引数
2.1.2 コマンドのオプション
2.2 オンライン・マニュアル
2.3 授業用のディレクトリ
2.3.1 ディレクトリの作成
2.3.2 ディレクトリの移動
2.4 ファイル管理(1)
2.4.1 ファイル管理コマンド
2.4.2 ファイルの一覧
2.4.3 テキストの出力
2.4.4 ファイルのコピー
2.4.5 ファイルの移動
2.4.6 ファイルの削除
2.5 演習2
2.6 レポート課題
2.7 参考文献
索引

2.1 コマンドの形式

2.1.1 コマンドの引数

前回の授業では、calコマンドを使ってカレンダーを表示しました。

asiaa1:~ b08a001$ cal
     10月 2008
日 月 火 水 木 金 土
          1  2  3  4
 5  6  7  8  9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

asiaa1:~ b08a001$

これは今月のカレンダーです。 他の月のカレンダーを表示するには、次のように入力します。

asiaa1:~ b08a001$ cal 2008
                             2008                               

        1月                   2月                   3月         
日 月 火 水 木 金 土  日 月 火 水 木 金 土  日 月 火 水 木 金 土
       1  2  3  4  5                  1  2                     1
 6  7  8  9 10 11 12   3  4  5  6  7  8  9   2  3  4  5  6  7  8
13 14 15 16 17 18 19  10 11 12 13 14 15 16   9 10 11 12 13 14 15
20 21 22 23 24 25 26  17 18 19 20 21 22 23  16 17 18 19 20 21 22
27 28 29 30 31        24 25 26 27 28 29     23 24 25 26 27 28 29
                                            30 31               
        4月                   5月                   6月         
日 月 火 水 木 金 土  日 月 火 水 木 金 土  日 月 火 水 木 金 土
       1  2  3  4  5               1  2  3   1  2  3  4  5  6  7
 6  7  8  9 10 11 12   4  5  6  7  8  9 10   8  9 10 11 12 13 14
13 14 15 16 17 18 19  11 12 13 14 15 16 17  15 16 17 18 19 20 21
20 21 22 23 24 25 26  18 19 20 21 22 23 24  22 23 24 25 26 27 28
27 28 29 30           25 26 27 28 29 30 31  29 30               

        7月                   8月                   9月         
日 月 火 水 木 金 土  日 月 火 水 木 金 土  日 月 火 水 木 金 土
       1  2  3  4  5                  1  2      1  2  3  4  5  6
 6  7  8  9 10 11 12   3  4  5  6  7  8  9   7  8  9 10 11 12 13
13 14 15 16 17 18 19  10 11 12 13 14 15 16  14 15 16 17 18 19 20
20 21 22 23 24 25 26  17 18 19 20 21 22 23  21 22 23 24 25 26 27
27 28 29 30 31        24 25 26 27 28 29 30  28 29 30            
                      31                                        
        10月                  11月                  12月        
日 月 火 水 木 金 土  日 月 火 水 木 金 土  日 月 火 水 木 金 土
          1  2  3  4                     1      1  2  3  4  5  6
 5  6  7  8  9 10 11   2  3  4  5  6  7  8   7  8  9 10 11 12 13
12 13 14 15 16 17 18   9 10 11 12 13 14 15  14 15 16 17 18 19 20
19 20 21 22 23 24 25  16 17 18 19 20 21 22  21 22 23 24 25 26 27
26 27 28 29 30 31     23 24 25 26 27 28 29  28 29 30 31         
                      30                                        

asiaa1:~ b08a001$ cal 11 2008
     11月 2008
日 月 火 水 木 金 土
                   1
 2  3  4  5  6  7  8
 9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30
asiaa1:~ b08a001$

コマンド cal 2008cal 11 2008 の2008や11を 引数 と呼びます。 引数は、「何をどうせよ」という指示の「何を」を表す部分です。 この例なら、コマンド cal 2008 は、「2008年のカレンダーを表示せよ」という指示になります。 コマンド cal 11 2008 は、「2008年11月のカレンダーを表示せよ」です。

引数の順序には意味があります。 順序を変えると、別の意味になります。 例えば、 cal 2008 11 と入力すると、11年2008月と見なされ、エラー・メッセージが表示されます。

calコマンドの形式は、次の3種類になります。

cal

これは、今月のカレンダーを表示します。

cal year

これは、 year 年のカレンダーを表示します。

cal month year

これは、 yearmonth 月のカレンダーを表示します。

なお、引数をとるコマンドでは、各要素をスペースで区切って入力します。

コマンドによっては、引数は必ず書かなければなりません。 また、引数の個数が3つ以上というコマンドもあります。

引数をとるコマンドの例をもう一つ紹介します。

echoコマンド は、引数をそのまま表示します。 形式は、

echo string

です。

asiaa1:~ b08a001$ echo "Good afternoon."
Good afternoon.
asiaa1:~ b08a001$

2.1.2 コマンドのオプション

コマンドの引数に似たものに、 オプション というものがあります。 オプションは、コマンドに与える追加情報です。 コマンドによって、引数はなければエラーになりますが、オプションはなくてもエラーになりません。

オプションは、普通は先頭がマイナス記号です。 (プラス記号も使われます。) また、オプションの順序は入れ換えても大丈夫です。

オプションの例は、次回以降に出てきます。


2.2 オンライン・マニュアル

コマンドの名前は覚えられても、引数やオプションまで覚えるのは大変です。 このため、UNIXでは、画面上でマニュアルが読めるようになっています。 このマニュアルを、 オンライン・マニュアル と呼びます。

manコマンド (MANual)は、オンライン・マニュアルを表示します。 コマンドの形式は、

man name

です。 例えば、calコマンドのマニュアルを表示するには、 man cal と入力します。

オンライン・マニュアルの続きを読むには、スペース・キーを押します。 上下の矢印キーを押すと、一行ずつスクロールします。 読み終わったら、 q キーを押して終了します。


2.3 授業用のディレクトリ

2.3.1 ディレクトリの作成

パソコンのファイルを分類するときに、フォルダを利用したことを思い出してください。 UNIXでは、フォルダのことを ディレクトリ と呼びます。 今後はディレクトリという言葉を使いますが、フォルダのことだと思ってください。

この授業では、いくつかのファイルを作成します。 授業と関係のないファイルと混在しないように、授業用のディレクトリを作成し、そこにファイルを格納することにします。 ディレクトリの作成はコマンドでもできますが、今日はFinderを使います。 Finderのウィンドウを開き、ホーム・ディレクトリの中に、comp2dというディレクトリを作成してください。

2.3.2 ディレクトリの移動

ここで、「ターミナル」のカレント・ディレクトリを、授業用のディレクトリに変更します。 カレント・ディレクトリ とは、ファイルを指定する際の基準となるディレクトリです。

cdコマンド (Change Directory)は、カレント・ディレクトリを変更します。 cdコマンドについては、次回、詳しく説明します。 とりあえず、この授業で「ターミナル」を起動したら、最初に次のようにしてください。

asiaa1:~ b08a001$ cd comp2d
asiaa1:~/comp2d b08a001$

2.4 ファイル管理(1)

2.4.1 ファイル管理コマンド

ファイル管理とは、ファイルの一覧を表示したり、ファイルを削除したりすることです。 ファイル管理は、普段はFinderで行いますが、コマンドでも可能です。 ここでは、ファイル管理を行うコマンドを説明します。

2.4.2 ファイルの一覧

それでは、テスト用のテキスト・ファイルを作成します。 Jeditを起動して、以下のテキストを入力してください。

これはテストです。
こちらは東京女子大学です。

そして、test02.txtというファイルに保存します。 ファイルは授業用のディレクトリcomp2dに保存し、保存するときのエンコーディングは「Unicode(UTF-8)」、改行タイプは「Unix(LF)」にしてください。

lsコマンド (LiSt)は、ファイルの一覧を表示します。 形式は、

ls

です。

asiaa1:~/comp2d b08a001$ ls
test02.txt
asiaa1:~/comp2d b08a001$

2.4.3 テキストの出力

catコマンド (conCATenate)は、ファイルの内容を表示します。 形式は、

cat file

です。

catコマンドで、テキスト・ファイル以外のファイルを指定すると、「ターミナル」の画面が無意味な文字で埋め尽くされます。 注意してください。

asiaa1:~/comp2d b08a001$ ls
test02.txt
asiaa1:~/comp2d b08a001$ cat test02.txt
これはテストです。
こちらは東京女子大学です。
asiaa1:~/comp2d b08a001$

2.4.4 ファイルのコピー

cpコマンド (CoPy)は、ファイルをコピーします。 形式は、

cp file1 file2

です。 これで、ファイル file1 をファイル file2 へコピーします。

もし、すでにコピー先にファイルがあるなら、そのファイルは上書きされます。 上書きするつもりがないなら、コピー先にファイルがないことを確認してください。

asiaa1:~/comp2d b08a001$ ls
test02.txt
asiaa1:~/comp2d b08a001$ cp test02.txt test02a.txt
asiaa1:~/comp2d b08a001$ ls
test02.txt  test02a.txt
asiaa1:~/comp2d b08a001$ cat test02a.txt
これはテストです。
こちらは東京女子大学です。
asiaa1:~/comp2d b08a001$

2.4.5 ファイルの移動

mvコマンド (MoVe)は、ファイルを移動します。 形式は、

mv file1 file2

です。 これで、ファイル file1 をファイル file2 へ移動します。 同じディレクトリの中なら、名称変更になります。

もし、すでに移動先にファイルがあるなら、そのファイルは上書きされます。 上書きするつもりがないなら、移動先にファイルがないことを確認してください。

asiaa1:~/comp2d b08a001$ ls
test02.txt  test02a.txt
asiaa1:~/comp2d b08a001$ mv test02a.txt test02b.txt
asiaa1:~/comp2d b08a001$ ls
test02.txt  test02b.txt
asiaa1:~/comp2d b08a001$ cat test02b.txt
これはテストです。
こちらは東京女子大学です。
asiaa1:~/comp2d b08a001$

2.4.6 ファイルの削除

rmコマンド (ReMove)は、ファイルを削除します。 形式は、

rm file

です。

Finderでファイルを削除すると「ゴミ箱」に移動しますが、rmコマンドでファイルを削除すると本当に消えてしまいます。 rmコマンドは慎重に使ってください。

asiaa1:~/comp2d b08a001$ ls
test02.txt  test02b.txt
asiaa1:~/comp2d b08a001$ rm test02b.txt
asiaa1:~/comp2d b08a001$ ls
test02.txt
asiaa1:~/comp2d b08a001$

2.5 演習2

コマンドを使って、ファイルのコピーを3個作成してください。

まず、Jeditを使って、コピー元のテキスト(例えば

こんにちは。
私の名前は東京子です。

)を入力し、report02.txtというファイルに保存します。 そして、コマンドを使って、report02a.txt, report02b.txt, report02c.txtというファイルにコピーしてください。

asiaa1:~/comp2d b08a001$ cat report02.txt
こんにちは。
私の名前は東京子です。
asiaa1:~/comp2d b08a001$ ???
asiaa1:~/comp2d b08a001$ ???
asiaa1:~/comp2d b08a001$ ???
asiaa1:~/comp2d b08a001$ cat report02a.txt
こんにちは。
私の名前は東京子です。
asiaa1:~/comp2d b08a001$ cat report02b.txt
こんにちは。
私の名前は東京子です。
asiaa1:~/comp2d b08a001$ cat report02c.txt
こんにちは。
私の名前は東京子です。
asiaa1:~/comp2d b08a001$

2.6 レポート課題

今日の演習2の答案(「ターミナル」画面のコピー)をメールで提出してください。 差出人は学内のメール・アドレス(b08a001@cis.twcu.ac.jpなど)とし、宛先はkonishi@cis.twcu.ac.jpとします。 メールの本文には、学生番号、氏名、科目名、授業日(10月3日)を明記してください。


2.7 参考文献


[小西ホームページ]   [目次・索引]   [前の授業]   [次の授業]

2008年10月3日更新
小西 善二郎 <konishi@cis.twcu.ac.jp>
Copyright (C) 2008 Zenjiro Konishi. All rights reserved.