この文書は EB ライブラリバージョン に対応しています。
目次:
Copyright (c) 1998-2006 Motoyuki Kasahara
一冊の CD-ROM 書籍は、大抵複数の 副本 (subbook) を 持っています。 たとえばある CD-ROM 書籍は国語辞典、英和辞典、和英辞典の 3 つの副本を 収めています。 個々の副本は、それ自体が独立した「書籍」になっています。
(CD-ROM 書籍) +-----------------------+ | [国語辞典] (副本) | | [英和辞典] (副本) | | [和英辞典] (副本) | +-----------------------+
EB/EBG/EBXA/EBXA-C/S-EBXA 形式の CD-ROM 書籍は catalog
というファイルを、EPWING 形式の CD-ROM 書籍は catalogs
というファイルを持っています。
これらのファイルは、その CD-ROM 書籍にはどんな副本が収められているのかを
定義しています。
これらのファイルは、CD-ROM 書籍のトップディレクトリに置かれています。
ebrefile
は元のカタログファイルを読み、ユーザから指定された
副本だけを取り込んだ新しいカタログファイルを生成します。
言い換えれば、ebrefile
は特定の副本の定義を、カタログファイル
から削除します。
CD-ROM 書籍が 3 つの副本を持っている場合、ebrefile
は
そのうちの任意の 1 つまたは 2 つの副本を、新しいカタログファイルに
取り込むことができます。
ハードディスクに CD-ROM 書籍の一部だけをコピーしたいときに、
ebrefile
は便利です。
ebrefile
は EB ライブラリと一緒に配布されています。
あなたは、自分の所有する CD-ROM 書籍の使用許諾を守らなくてはいけません。
ebrefile
はフリーソフトウェアですが、あなたの書籍が自由に
使えるものであるとは限りません。
ebrefile
は、CD-ROM 書籍のあるファイルの内容に変更を加えます。
ご注意下さい。
ebrefile
の実行
ebrefile
の一般的な起動方法は次の通りです。
% ebrefile 書籍へのパス
書籍へのパス には、CD-ROM 書籍のトップディレクトリ、つまり
catalog
または catalogs
ファイルが存在する
ディレクトリを指定します。
複数のパスを書くことはできませんが、以下のように、パスの指定を省くことは
できます。
% ebrefile
この場合、ebrefile
はカレントディレクトリ (.
)
が指定されたものと判断します。
遠隔アクセスには対応していませんので、遠隔アクセス識別子は使用できません。
% ebrefile ebnet://localhost/cdrom ebrefile: ebnet には対応していません。
特に指定がないと、ebrefile
は、元のカタログファイルで定義
されているすべての副本を新しい副本に取り込みます。
つまり、新しいカタログファイルは、単に元のファイルのコピーになります。
この振る舞いは、役に立ちません。
ebrefile
は、通常 --subbook (-S)
オプションを指定して起動します。
--subbook (-S) オプションは引数を一つ取り、
そこにカンマ (,) で区切って、新しいカタログファイルに
取り込みたい副本のディレクトリ名を並べて書きます。
ebinfo
コマンドを用いると、あなたの所有している書籍に
どのような副本が含まれているのかを知ることができます。
% ebinfo /mnt/cdrom ディスクの形式: EB/EBG/EBXA/EBXA-C/S-EBXA 文字コード: JIS X 0208 副本の数: 3 副本 1: 題名: 新英和辞典(第四版) ディレクトリ: english 検索方式: 前方一致 後方一致 条件 メニュー フォントの大きさ: 16 24 30 48 半角フォントの文字: 0xa121 -- 0xa24e 全角フォントの文字: 0xa321 -- 0xa27e 副本 2: 題名: CD-ROM 仏和辞典(第三版) ディレクトリ: french 検索方式: 前方一致 後方一致 条件 メニュー フォントの大きさ: 16 24 30 48 半角フォントの文字: 全角フォントの文字: 0xa321 -- 0xa27e 副本 3: 題名: ポケット独和辞典(第三版) ディレクトリ: german 検索方式: メニュー フォントの大きさ: 16 24 30 48 半角フォントの文字: 全角フォントの文字: 0xa321 -- 0xa27e
(ebinfo
コマンドに関しての詳細は、
ebinfo コマンドのマニュアル を参照のこと。)
この例では、3 つの副本が書籍には含まれており、その名前は english
french
, german
だということが分かります。
次のコマンドを実行すると、ebrefile
は副本として
english
と french
だけを定義した新しいカタログ
を生成します。
% ebrefile --subbook english,french
ディレクトリ名の大文字・小文字の違いは、区別されません。 --subbook の引数は、次のように分けて書くこともできます。
% ebrefile --subbook english --subbook french
ebrefile
は副本の定義順序を変えることはできませんので、
--subbook に与える引数の順序は任意です。
これで再構成は完了です。
もういちど ebinfo
を起動してみましょう。
副本 german
が消えています。
% ebinfo /mnt/cdrom ディスクの形式: EB/EBG/EBXA/EBXA-C/S-EBXA 文字コード: JIS X 0208 副本の数: 2 副本 1: 題名: 新英和辞典(第四版) ディレクトリ: english 検索方式: 前方一致 後方一致 条件 メニュー フォントの大きさ: 16 24 30 48 半角フォントの文字: 0xa121 -- 0xa24e 全角フォントの文字: 0xa321 -- 0xa27e 副本 2: 題名: CD-ROM 仏和辞典(第三版) ディレクトリ: french 検索方式: 前方一致 後方一致 条件 メニュー フォントの大きさ: 16 24 30 48 半角フォントの文字: 全角フォントの文字: 0xa321 -- 0xa27e
もし、CD-ROM 書籍全体をすでにハードディスクにコピーしているなら、
副本 german
のファイルは削除しても構いません。
ディレクトリ名が小文字で構成されているなら、次のようにします。
% rm -r german
ebrefile
は、読み込んだカタログファイルにそのまま上書きして
新たなカタログファイルを生成しますが、元のカタログファイルの複製が、
catalog(s).old
というファイル名で保存されます。
副本の選択を間違えてしまった場合は、いったん元に戻しましょう。
(以下では、カタログファイルが catalogs
だと仮定しています。)
% mv catalogs.old catalogs
ただし 実行時に catalog(s).old
が既に存在していると、上書き
せずに残します。
この場合、カタログファイルの複製は新たに作られませんので、注意して下さい。
ebzip
との連携
ebrefile
は、ebzip
という CD-ROM 書籍を圧縮する
コマンドと併用することができます
(ebzip
コマンドに関しての詳細は、
ebzip コマンドのマニュアル を参照のこと。)
通常、 ebzip
と ebrefile
にはコマンド行で同じ
引数を与えます。
CD-ROM 書籍が /cdrom
にマウントされ、この書籍には
english
、french
、german
という
3 つの副本が収められているとします。
以下に記した操作によって、副本 english
、french
は圧縮されてカレントディレクトリの下に置かれ、副本 german
は
副本のリストから削除されます。
% ebzip --subbook english,french /cdrom % ebrefile --subbook english,french /cdrom
圧縮したファイルをカレントディレクトリ以外に置くには、次のようにします。
% ebzip --output-directory /dict --subbook english,french /cdrom % ebrefile --output-directory /dict --subbook english,french /cdrom
ebrefile
のオプション一覧
ebrefile
コマンドは、伝統的な一文字オプション名と覚えやすい
長いオプション名の両方を扱うことができます。
長いオプション名を表すには、- ではなく -- を
用います。
オプション名が一意に決まる範囲内で、名前の後方部分を省略することができます。
-h
--help
-o ディレクトリ
--output-directory ディレクトリ
ebrefile
の実行」
を参照のこと)。
-S 副本
--subbook 副本
ebrefile
が新しいカタログファイルに取り込むべき副本を指定します。
副本 は、副本のディレクトリ名をカンマ (,) で区切って
並べたものでなくてはいけません。
指定しなかったときは、すべての副本が対象になります
(詳しくは、「副本の選択」 を参照のこと)。
-v
--version