= 簡易表計算

         TC 式 [オプション] [NX] [Zero] [行ラベル1 行ラベル2]
                                   [行ラベル3 行ラベル4]

         (DOS版ではサポートされません)

            式        :[[opd3=]opd1]opc[opd2][{/key[/grade]|//count}]

              .5 種類の形式があります。
                 -1項計算(合算以外)
                    TC [opd1]{++|--|=|/conv-type}
                 -1項計算(合算)
                    TC [opd1]+[{/breakkey[/grade]|//count}] [option]
                      行数をカウントするだけの場合特別にopd1に"1"を
                      指定できます。例)tc 1+/10-16!
                 -2項計算
                     TC [opd1]{+= | -= | *= | /= | %= | == | ~= | =}[opd2]
                 -3項計算
                    TC opd3=opd1{+ | - | * | / | % | ~ | ==}opd2
                 -表の列の桁整列
                    TC FMT [[fieldno[-fieldno]]{R|L|P}[F][C][N][O] ...]
                            [D[delimiter]] [C][N][O] [S[R]outdelm] [H] [Q[d][s]]

              opd1/2/3:[type]{column1-column2|定数}または [type]:fieldno
                  type:データタイプ。
                        d(10進数),x(16進数),o(8進数),t(時間),
                        z(コンマ区切りの10進数)
                        時間は hhmmss,hh:mm:ss,hh.mm.ssの形式
                        指定のないときはhh:mm:ssまたはhh.mm.ss形式の
                        ときは 時間、それ以外は10進数とみなします。
                  column1/2:オペランドとなるファイル上の表データの
                            カラム位置を指定します。
                            データタイプ d/tでは小数点もOK。
                        タイムスタンプ定数は hh:mm:ss.xxx の形式です。
                        代入(=),比較(==)で使用する文字列定数は二重引用符で
                        囲みます。
                        例)tc 1-10*=60 tc 1-10+=01:10:29  tc 1-2=10-14=="abcde"
                  fieldno  :1桁でフィールド番号を指定する
                            10以上は a から z を使用。
                            事前に "TC FMT H" コマンドでフィールド番号
                            ガイドラインを挿入すること。
                opc   :四則演算子
                       + :合計の計算。オプションで平均、最大最小も表示。
                          小計行を明示指定する(項が'='で始まる行を置く)
                          か或いは、breakkey,count指定により小計も出力。
                          小計の出力位置はオプションで指定します。
                       = :-オペランド3の指定がないとき。
                            表位置をカット&ペーストで指定したあと、
                            これを第1オペランドとする時に使用します。
                            例。 TC =
                          -オペランド3の指定があるとき。
                            =の左のオペランドが第3オペランド(結果の
                            設定先)であることの指定になります。
                            例。 TC t10-19=t30-39+50-55
                            =の右に指定がない時は第一オペランドの指定になります。
                            例。 TC 10-20=
                          -複写操作でも使用します。
                            opd3=opd2 [INS] [RJust]
                            データタイプを指定しない場合はopd2を
                            スペーストリムして文字列複写。
                            データタイプを指定すれば変換操作が可能。
                            opd2を文字列定数とするときは opd2は "xyz"
                            のように指定する。
                            例  tc 1-8="total=" ins;  tc 20-30="";
                                tc z1-8=x10-18;
                       ++:その行までの合算で項目を置換します。
                          例。 TC x10-19++
                       --:前の行との差分で 項目を置換します。
                          例。 TC o10-19--
                       +=,-=,*=,/=,%=,~=
                         :各行オペランド1とオペランド2の演算結果を
                          オペランド1にセットします。
                          例。 TC 10-19*=20-21
                       ~ :"並存数"をカウントします。
                          例えば、オペランド1,2がそれぞれ開始時刻/終了時刻
                          のとき開始時刻に何件のレコードが並存している
                          (終了時刻に達してない)かをカウントする。
                          開始時刻=終了時刻のレコードを開始時刻のレコード
                          としてカウントする場合はcountEQを指定する。
                          opd1にデータタイプT(時刻)を指定すればopd2は
                          秒数指定(間隔)でもよい。そうでない場合は
                          比較はすべて文字列比較となる。
                          例。 TC 10-13=30-41~50-51
                       ==:比較。データタイプを指定しない場合は各行
                          オペランド1とオペランド2の大文字小文字区別有比較
                          opd1==opd2 形式の場合
                            不一致行の行番号欄との区切り位置に印をつける。
                            この行は *L 指定でFindできる。
                          opd3=opd1==opd2 形式の場合
                            比較結果(-1,0,1)をopd3に設定。
                            結果を1/0、0/1で設定するときはそれぞれ
                            TF、FT オプションを指定する。
                      /conv-type:データの型変換をする。
                          conv-type:O:8進,X:16進,T:時刻,D:10進,
                                     Z:FMT(コンマ分離)10進,
                                     U:符号無10進,UZ:符号無FMT10進,
                                     L:TimeStamp-->時刻
                      FMT:表の列をスペースを列の区切り文字として桁整列。
                          R :右詰め。フィールド番号のみのときの省略値。
                          L :左詰め。
                          P :小数点をあわせて右詰め。
                          フィールド番号を付けないと"O"の指定があるまで
                          以降の省略値となる。
                          R/L/Pの指定なしとみなしたフィールドは
                          フィールド間隔が保持される。
                          5フィールドある場合の例では次の様になる。
                               tc fmt                ==> r r r r r
                               tc fmt  r l r o       ==> r l r - -
                               tc fmt  r 3l          ==> r r l r r
                               tc fmt  r 3l l        ==> r r l l l
                               tc fmt  3r            ==> - - r - -
                          N :数値フィールドとそれまでの全フィールドは
                             1つのフィールドとみなし数値フィールドの
                             ところで整列する。
                          A :"N"指定をリセットする。
                          C :以降のフィールドすべてその間のスペースを
                             1スペースに圧縮して結合する。
                             ただし、NC指定のときは数値フィールドまで結合する。
                          O :以降のフィールドは整列しない。
                          H :フィールド番号ガイドラインの挿入。
                          D[delimiter]:フィールド分離文字
                                       省略値はD" ",DのみはD","の意味。
                                       複数指定可能。例えば D" ,"。
                                       エスケープ文字指定もOK
                                       例えば D"\t\xa0\xff" は
                                       0x09,0xa0,0xff のすべてが分離文字
                                       unicodeは 例えば D\u00c1 のように措定する
                          S[R][outdelm]:出力用フィールド間分離文字。
                                        R      :入力の分離文字は削除する。
                                        outdelm:フィールド間に挿入する分離文字
                                                省略値は" "
                                                エスケープ文字は\t=0x09いがいはOK
                                                複数文字指定はその文字列を出力,DBCSもOK
                                                unicodeは 例えば D\u00c1 のように措定する
                            例。 TC fmt 1-3f 2r
                breakkey :[type]column1-column2[>|!|<]
                          opcode=+(合計の計算)のときに小計を表示する。
                          区切りを指定します。
                          >(昇順、省略値)、<(降順)のとき表はソートされて
                          いる必要があります。! キーは不一致で小計をとる。
                          type,columnはキー項目のタイプ,桁位置を指定する。
                          gradeの指定がなければこの桁位置の値が変わる毎に
                          小計が表示されます。
                      例。 TC 10-19+/1-4      TC10-19/1-4!
                grade    :breakkey(この場合数値でなければなりません)の値が
                          gradeの値の整数倍になる毎に小計を表示する。
                      例。 TC 10-19+/1-4/1000     :Col.1-4 が <=1000, <=2000,  ...になる毎に小計を取る

                count    :count指定の行数毎に小計を表示する。
                      例。 TC 10-19+//100         :100 行毎に小計を取る。

                filedno  :右詰め(R)、左詰め(L) をフィールド番号で指定
                          省略値は右詰め、フィールド番号(1開始)を省略
                          すると以降のフィールド全てに有効となります。
                      例。 TC FMT 3L ; TC FMT R L;  TC FMT 1-4L 5-6L;

            オプション:スペースを置いて複数指定できます。
                ign :既存の小計行(項の先頭に "="がある行)を無視する。
                aft|bef|top|end|las:小計、合計行の挿入位置。それぞれ表の
                                     前後、ファイルの最初最後の指定。
                                     省略値はキーブレークの位置
                -Ofilename          :小計、合計行の別ファイル出力指定。
                                     ワイルドカードを使用して現ファイル名
                                     からの改名形式で打鍵の簡略化も可能。
                ave|minmax|maxmin|amm:小計、合計行の追加オプション。
                                      平均、最大最小、両方の追加指定。

                NX    :非表示行を対象外とする指定。
                Zero  :桁幅まで前に"0"をパディングする。
                V[n]R :出力の小数点以下桁数を指定する。R:四捨五入。
                INS   :結果をopd3の位置に挿入する。
                       opd3は挿入位置と挿入桁数を表す。
                RJ    :文字列複写でopd3とopd2の幅が異なるとき右づめ:
                       RightJustifyする。
                       (省略値は左詰め:LeftJustify)。
                countEQ:"~"(並存数カウント)操作で開始=終了時刻のレコード
                        をカウントUp対象(ACTIVE)とする。
                        指定がないと開始=終了のレコードはINACTIVEとみる。
                Q[d][s]:FMTで引用符を考慮する(引用符内は1フィールド)。
                        d:二重引用符(")、s:一重引用符(')。
                        dもsも指定しない場合2重/1重引用符両方考慮。
                TF     :==(比較演算)の結果をopd3に1(一致)/0(不一致)でセット。
                FT     :==(比較演算)の結果をopd3に0(一致)/1(不一致)でセット。
            行ラベル  :表の開始、終了行行ラベルで指定します。
                       2対の時はそれぞれopd1,opd2用。1対のときは
                       opd1/2両方の行範囲指定になります。
                       ラベルが数字の場合は行番号指定とみなします。
                      例。 TC 10-19+ .a .b ; TC 10-19+ .100 .200

            -opcodeが "+"(合計の計算)のときの小計行の扱い。
             ブレーク指定(breakkey,count)がある時。
               既存の小計行は ign 指定がなければ削除され、ign指定が
               あれば無視されます。そしてブレーク指定に従った新たな小計行
               が挿入されます。挿入位置はオプション指定(aft,bef,top,end,
               las)がなければブレークの位置です。
             ブレーク指定がない時。
               オペランド1の先頭に"="をおくとそこで小計が取られます。
               挿入位置オプションは合計行に対して効果を持ちます。
            -カット&ペーストを使用した表指定。
             第1オペランド,第2オペランドが異なるファイルの時は、
             カット&ペーストでブロック指定します。
             Alt+F7でブロックを指定した直後に続いてもう一度Alt+F7を
             おすことで第1オペランドが決定されます。
             或いはブロック指定の後の"TC ="コマンドでも第1オペランドの
             決定になります。
             この後のカット&ペーストでのブロック指定が第2オペランドの
             指定を意味します。第2オペランドを指定したら、桁位置指定の
             無いTCコマンドを入力します。例えば"TC +="、"TC 1-9=+。
             (異なるファイルの場合コマンドは第2オペランド側で入力する)
             桁位置以外のオプションは同様に指定できます。
             例えば "TC t+=t/4-5"。
             複写には使用できません。

            使用例