プログラム・ライブラリ


 今まで、UNIX上で開発することが多かったので、コマンド形式のプログラムを作ってきました。これまで個人で使用してきたのですが、今回ホームページを作ったので、それらを公開することにしました。
 プログラムは UNIX上で動かしてきたものが少なくないですが、それらをWindows95系のOSのDOS窓で動くように修正を行いました。(WindowsNTやWindows2000では、画面表示を行なうもので表示がおかしくなるものがあります。)
 UNIX上では圧倒的にコマンドを使用することが多いので、作成したプログラムもやはりコマンド形式となっています。今はGUI形式のプログラムが主流となっていますが、コマンド形式も覚えればそれほど苦にはならないと思われます。
 コマンド形式がGUI形式よりも明らかに有利な点は、それぞれのコマンドが有機的に関連し合うことだと思います。実は、この思想はUNIXのコマンドにあります。 UNIX上の各コマンドは、それぞれが有機的に関連性をもつように統一されています。 このため、各コマンドを有効に利用するなら、できないことないといえるほど完備されたものになっています。
 というわけで、作成したプログラムのオプションもUNIX上の対応するコマンドとできるだけ同じになるように作成してあります。 (おそらく、その方がUNIXを使用されてきた方には混乱が少ないと思われます。)
 ただし、対応するコマンドやオプションがないものについては、適当に決めました。

 該当のものをクリックすれば、プログラムをLHAで圧縮したファイルをダウンロードできます。それを解凍して、パスの通ったディレクトリにコピーして下さい。
 この場合同一のファイル名が存在しないことを確認してから行ってください。
 また、それがパスの通ったディレクトリにもないことを確認して下さい。
そうでないと、名前が同じでも別のプログラムを実行してしまうことにもなるからです。

 プログラムはコマンド形式になっていますので、「Dos窓」(MS-DOSについて)より実行してください。

 エラーメッセージについては、英語で表示されます。

     この理由は、もともとが日本語の環境がないマシンで開発された経緯によります。それと、英語の方が日本語よりも簡便な表示となる場合が少なくないこと(慣れると見易いことがよくあります)、そして日本語の環境がないマシン上でも動作に支障がないということによります。
     ただし、メッセージは英語で表示されますが、文字セットは基本的にシフトJISコードに対応しています。 このため、英語以外の欧文の特殊コード(0x80以上の1バイト文字)やシフトJIS以外の文字セット(特にUNIX系のマシンでよく使用されているEUCコード)を使用のものに対しては動作がおかしくなる場合があります。
 エラーメッセージは簡単な英文となっていますので、辞書で調べれば容易に分かるかと思います。
ただしスペルミスや文法的な間違い等が結構あるかと思いますので、不適切な文に気づいたという方は、教えて頂けると幸いです。

 最後に、MS-DOSのファイルシステムについて、重要な点をここで述べておきます。 初期のファイルシステムでは、ファイル名は8.3形式となっていました。 つまり、拡張子は3文字以内、拡張子以外は8文字までしか許されていませんでした。 この制限はかなり不便なものでしたので、Windows95からは長いファイル名もつけられるようになりました。 といっても、それまでのプログラムにも対応できるようにするため、短いファイル名も有効となるように手だてされました。
 この結果、同一のファイルに対して、短い名前のものと長い名前のものとの二つができることになりました。 ところが、このことはワイルドカード(特に'*')を用いた場合には、不本意なファイルのものも選択されるということになります。 つまり、一般に8.3形式でない場合には、短いファイル名は、"先頭の何文字かの文字列+'~'+数字.拡張子3文字"となります。 したがって、例えば、"a*1.txt"とした場合には、短いファイル名のものと一致する可能性が高くなります。 つまり、この結果、本来のファイル名が、a*1.txtとは異なるものとも一致する可能性が出てくるのです。 例えば、ABCDEF~1.TXT(本来の名前は、abcdefgh2.txtだとします)と一致することにもなります。
 この弊害に対処するために、以下のプログラム群においてワイルドカードを使用した場合には(ただしワイルドカードを使用できるものは限られていますが)、長いファイル名のみを対象にすることにしました。 しかし、ワイルドカード指定でない場合には、短いファイル名も有効となります。


【各コマンド共通事項】
1.使用方法の表示
 コマンドのパラメータの説明を表示させたい場合には、以下のように入力して下さい。
   コマンド名 -usage

 使用方法はHTML文書としても作成しましたので、より詳細な説明もしくはコマンドパラメータ以外の機能の説明については、こちらを参照して下さい。
この文書を読む場合、その記法上の注意点を以下に挙げておきます。

・複数の項目からあるものを選択する場合は、{a|b|…}というように記述しています。
・省略可能なものは、[…]というように括っています。
・コマンドのオプションパラメータとして、-abc…というように書いてあるものは、それらから幾つかを選択して指定します。

2.実行確認メッセージ
 ファイルを削除したり、上書したりする場合、それを行なうかどうかを下記の形式で行ないます。
   "…? (y/n/a) "
 ここで、yまたはYを入力すると、この処理が実行され、aまたはAを入力すると、以降全てのものに対して実行され、それら以外のものを入力した場合には、この実行は行われません。


  1. arch:アーカイブ・ファイルの作成。 ... Version 2.40
    使用方法

  2. arr:ファイルの各行を複数の列に並べます。 ... Version 1.01
    使用方法

  3. bcmp:ファイル同士をバイナリで比較(一致しているか否か) ... Version 1.30
    使用方法

  4. chgcod:ファイルの暗号化 ... Version 1.10
    使用方法

  5. chtab:タブの長さの変換 ... Version 1.10
    使用方法

  6. cpf:ファイルコピー ... Version 1.31
    使用方法

  7. crconv:CRコード変換 ... Version 1.30
    使用方法

  8. cutfile:ファイル分割 ... Version 1.40
    使用方法

  9. cxed:テキストファイルの編集 ... Version 3.24
    使用方法

  10. defexp:define定義されたものをその値に変換 ... Version 1.12
    使用方法

  11. difhtm:diffやtcmpの差分ファイルを元にして、差分表示するHTMLのソースを出力します。 ... Version 1.21
    使用方法

  12. defpr:define文、typedef文、struct文、union文を表示します。 ... Version 1.10
    使用方法

  13. edstr:文字列の編集 ... Version 1.80
    使用方法

  14. eqlist:同一内容のファイルの検索 ... Version 1.23
    使用方法

  15. euc2sj:EUCコードからSJISコードへの変換またはこの逆変換 ... Version 1.14
    使用方法

  16. exec:ファイル名やディレクトリ名のワイルドカードを展開してコマンドを実行 ... Version 1.70
    使用方法

  17. fdmp:ファイルのダンプ ... Version 2.71
    使用方法

  18. fls:ファイル一覧の表示 ... Version 2.10
    使用方法

  19. funpr:関数の表示 ... Version 0.94
    使用方法

  20. funtr:関数ツリーの表示 ... Version 0.94
    使用方法

  21. ieurl:IEのお気に入りURLファイルより、リンクリストを作成 ... Version 1.50
    使用方法

  22. lsort:ファイルのソート ... Version 1.41
    使用方法

  23. mcal:関数計算プログラム ... Version 3.11
    使用方法

  24. merge:複数のファイルをフィールド単位にマージする。 ... Version 1.20
    使用方法

  25. mkwall:壁紙データの作成 ... Version 5.40
    使用方法

  26. modifyHtm:HTML文書の変更 ... Version 1.44
    使用方法

  27. part:テキストファイルの先頭部分等の表示 ... Version 1.11
    使用方法

  28. prdata:フィールド単位にデータ出力をする。 ... Version 1.10
    使用方法

  29. repgen:テンプレートファイルの内容を置き換えて、テキストを生成します。 ... Version 1.42
    使用方法

  30. rmf:ファイルの削除を行ないます。 ... Version 1.41
    使用方法

  31. rmifdef:ifdef文の削除 ... Version 1.50
    使用方法

  32. see:テキストファイル表示 ... Version 2.32
    使用方法

  33. skipSrch:文字列を等間隔で検索 ... Version 1.22
    使用方法
    ※特別な用途以外では、あまり使えないでしょう。

  34. srch:文字列の検索 ... Version 1.51
    使用方法

  35. string:ファイルから文字列の抽出 ... Version 1.02
    使用方法

  36. tcal:簡易表計算プログラム ... Version 1.20
    使用方法

  37. tcmp:テキストファイル同士の比較 ... Version 1.51
    使用方法

  38. tcut:テキストファイルからの文字列の切り出し ... Version 1.10
    使用方法

  39. tobmp:BITMAP形式への画像変換 ... Version 1.40
    使用方法

  40. tohtml:テキストをHTML文書に変換 ... Version 1.41
    使用方法

  41. uni2sj:ユニコードからSJISコードへの変換またはこの逆変換 ... Version 1.03
    使用方法

【ウィンドウ形式のもの】
  1. wallchg:壁紙サイクリックチェンジャー ... Version 1.13
    使用方法

  2. imgEdit:画像修正ツール ... Version 8.82

  3. AVBGM_Player:BGMプレーヤー ... Version 6.64

  4. ReachMarjan:リーチ麻雀 ... Version 2.64