(この文章は2004年度のTA、渡邉卓也さんが書いたものを増原が修正したものです。)
まず、纏めたいファイルが在るディレクトリに移動します。ここでは、getcp1コマンドで作られた~/javabook/turtleディレクトリでプログラムを作成していると仮定します。(~/は自分のホームディレクトリを表します。)
ux101$ cd ~/javabook/turtle
lsコマンドでこのディレクトリに置かれているファイルを確認しましょう。
ux101$ ls AHouse.java Mikuji81.java T23.java T71.java Args51.java Mikuji82.java T41.java T81.java ClickableTurtleFrame.java Mikuji83.java T43.java Tensen.java ClikcableTFDemo.java Multi91.java T45.java TextHouse.java ColorFrame.java Multi93.java T48.java Thread91.java Drawable.java Rabbit.java T491.java Timer.java Filling.java Rabbit0.java T492.java Turtle.java Hello31.java SLock.java T493.java TurtleFrame.java Hoteisiki41.java SPolygon.java T494.java TurtlePanel.java Hoteisiki42.java Sleep91.java T51.java report01.text House.java Stepper.java T53.java Kinri41.java T21.java T61.java Kinri43.java T22.java T62.java
置かれているファイルの内、report01.text、T21.java、T22.java、T23.javaの四つをレポートとして提出したいとします。(実際に提出する際には、課題で新たに作成したプログラムだけでなく、既存のものを変更したプログラムや説明書き、実行結果の画像ファイル等、必要なものを全て一つに纏めて提出して下さい。特に、以前の課題で作成したプログラム等で、今回の課題のプログラムの実行に必要だけれども今回は変更をしていない、といったものは忘れがちですので注意して下さい。)
tarコマンドで複数のファイルを一つに纏めることが出来ます。ここでは、自分のユーザ名が g030186 で第1回課題を最初に提出するとします。その場合、g030186-1-1.tar.gzという名前のファイルに纏めることになります。(ファイル名は<自分のユーザ名>-<課題番号>-<提出回数>.tar.gzという形式で付けるようにして下さい。)
ux101$ tar cvzf g030186-1-1.tar.gz report01.text T21.java T22.java T23.java report01.text T21.java T22.java T23.java
lsコマンドでg030186-1-1.tar.gzというファイル名のファイルが作成されていることを確認します。
ux101$ ls -l g030186-1-1.tar.gz -rw------- 1 cc46829 student 1032 10 20 12:46 g030186-1-1.tar.gz
再びtarコマンドで、g030186-1-1.tar.gzの中身を確認出来ます。
ux101$ tar tvzf g030186-1-1.tar.gz tar: Record size = 16 blocks -rw------- cc46829/student 989 2004-10-20 12:42:40 report01.text -rw-r--r-- cc46829/student 810 2004-10-03 14:31:01 T21.java -rw-r--r-- cc46829/student 603 2004-10-03 14:31:01 T22.java -rw-r--r-- cc46829/student 706 2004-10-03 14:31:01 T23.java
このg030186-1-1.tar.gzをCFIVEの課題提出機能を使って提出すれば、出したいファイルを一つに纏めた形で提出することが出来ます。
tarコマンドは複数のファイルを一つのファイルに纏める、またその纏めたファイルから元のファイルを取り出す、といった機能を持ったコマンドです。