Lesson 5 見やすい帳票に仕上げる

    Lesson4で作成した、時間別売上数量金額のデータ(時間順にソートされている)は、視覚的に見づらい。各行の項目は揃っていないし、タイトルや項目名が無いので、その帳票の意味も他人には理解しづらい。そこでこれらの問題を解決するコマンドについてLesson5にて学習していく。
    さて、見やすい帳票とは何であろうか。ある人はLesson4で作成したデータ(dat4-1)で十分と言うかもしれない。またある人はタイトルや項目名も表示されたほうがよいと言うかもしれない。さらに神経質な人はカラフルな帳票をもって見やすいと言うかもしれない。見やすさを凝りだすときりがない。そこでMコマンドでは帳票をある程度見やすくするためのコマンドが2つ用意されている。一つはテキストで表現するもの、他方はHTML文書として表現するものである。 後者についてはここでは紹介しない。
   テキストとして見やすい帳票を作成するコマンドは"mlist2"である。このコマンドは主に4つの加工を加えてくれる。1)タイトルを表示する。2)項目名を表示する。3)各行の項目を揃えて表示する。4)簡単な枠線を表示する。

1. タイトルファイルの作成

    タイトルの表示についてであるが、タイトルは表の上に表示される文字列である。またタイトルはあらかじめ一つのファイルとして用意しておかなければならない。それはテキストエディタやechoコマンドなどを用いて作成する。ここではechoコマンドで作成する例を紹介する。コマンドラインから次のように入力する。
 
bash$ echo '時間別売上数量金額' >xxtitle
    echoコマンドは、パラメータとして与えた文字列を単に標準出力に書き出すだけのコマンドである。そこで、上記の例では、"時間別売上数量金額"という文字列を標準出力に出し、それをリダイレクトしてxxtitleというファイルに書き出している。 xxtitleの内容をlessで確認しておこう。
    さらに、タイトルとしてもう一行追加したい場合は次のように入力すればよい。
 
bash$ echo 'Lesson5にて作成' >>xxtitle
ここで重要なポイントは、リダイレクトの記号として">"ではなく、">>"を用いている点である。これは、xxtitleというファイルがあれば、追加する点が">"を用いる場合とは異なる。このことによって、xxtitleには"時間別売上数量金額"と"Lesson5にて作成"という2行の文字列が入力されたことになる。
    さらに、日付もタイトルの一部として追加しておこう。そこで次のように入力する。
 
bash$ date >>xxtitle
dateコマンドは、現在の日付を標準出力に書き出すコマンドである。上記の入力によって、xxtitleには3行目として日付が追加されたことになる。ここでlessコマンドにて確認すると次のようになる。
 
bash$ less xxtitle
時間別売上数量金額 
Lesson5にて作成 
Fri Apr 10 15:11:12 JST 1998 

2. 項目名ファイルの作成

項目名についてもタイトルと同様に一つのファイルとして用意しておく必要がある。そこで、以下のように入力する。
 
bash$ echo ':時間: 数量: 金額:' >>xxfield
    この項目名ファイル(xxfield)には次のようなルールが決められている。1)項目名と項目名の間は":(コロン)"で区切る。2)コロンの右隣にスペース文字を入れると、その項目は右揃えで表示され、それ以外の場合は左揃えになる。3)一行で記述しなければならない。
    上記の例では、第一項目として「時間」、第二項目として「数量」、第三項目として「金額」という文字を定めている。また時間項目は左揃え、数量と金額項目は右揃えで表示すること定めている。作成したファイル(xxfield)の内容を確認しておこう。

3. mlist2の実行(mlist2) 

    さて、タイトルファイル(xxtitle)と項目名ファイル(xxfield)が作成されたことで、mlist2を実行する準備がととのった。そこで、次のように入力する。
 
bash$ mlist2 title=xxtitle field=xxfield <dat4-1 >dat5-1
title=に続けてタイトルファイル名を指定し、field=に続けて項目名ファイル名を指定する。結果は以下のようになる。タイトルと項目名が表示され、項目値が左揃え(時間)もしくは右揃え(数量、金額)になっていることが確認できる。また簡単な枠線も表示されている。
 
bash$ less dat5-1
 時間別売上数量金額
Lesson5にて作成
Fri Apr 10 18:37:33 JST 1998
==================
 時間  数量  金額 
------------------
 900      4  1398 
 1000    80 47141 
 1100   131 72931 
 1200    96 45076 
 1300   162 38923 
 1400    72 31785 
 1500   152 46934 
 1600   156 65250 
 1700   199 93684 
 1800   164 80829 
 1900   106 45124 
 2000    39 13111 
==================

・演習問題

a) Lesson4のa)の演習で作成したデータについて、mlist2を用いて見やすい帳票を作りなさい。
b) Lesson4のb)の演習で作成したデータについて、mlist2を用いて見やすい帳票を作りなさい。
c) Lesson4のc)の演習で作成したデータについて、mlist2を用いて見やすい帳票を作りなさい。
d) Lesson4のd)の演習で作成したデータについて、mlist2を用いて見やすい帳票を作りなさい。