[ 先頭 | 上へ | Prev | 次へ | 目次 | 索引 ]

Analog 5.91beta1: 設定コマンドの文法


この章では、 Analog に設定コマンドを読み込ませる方法や、設定ファイル自体の文法について説明しています。個々のコマンドの文法については、後述する 早見表 の章に掲載しています。
Analog が起動すると、まず設定ファイルとコマンドライン (コマンドラインのある OS 上で Analog を起動した場合) からオプションを読み込みます。これらのオプションのほとんどのデフォルト値は、プログラムのコンパイル時点で、 anlghead.hanlghea2.h というファイルによって設定されています。 そのため、コンパイル済のバイナリをダウンロードするのでなく、自分で Analog をコンパイルする場合は、コンパイル前にこれらのファイルでオプションの設定を行なうことも可能です。これらのオプションのすべてについて、ファイル中に説明があります。
Analog が 最初に読み込むファイル は、通常 analog.cfg という名前の デフォルトの設定ファイル です。 このファイルの読み込みを抑止するには、コマンドラインで -G オプションを指定します。コマンドライン引数は指定された順番に読み込まれます。 最後に、プログラムのコンパイル時に 強制設定ファイル を指定した場合は、それが読み込まれます。このファイルは、ユーザが無効にすることができない設定ファイルです。このファイルが存在しない場合、 Analog は即座に終了します。 これにより、システム管理者は、一般のユーザが特定のファイルを解析したり、特定のレポートを生成したりするのを防ぐことができます。 しかしながら 、ユーザが勝手に解析を行なうことを防ぐ確実な方法は、ログファイルへのアクセスを禁止することです。そうしない限り、 別の Analog や別のプログラムを使ってログファイルを解析するのを防ぐ方法はありません。
以下のようなコマンドにより、別の設定ファイルを 読み込むことが可能です
CONFIGFILE other.cfg
指定された設定ファイルに記述されたコマンドは、直ちに順番に読み込まれます。 その後、プログラムは最初の設定ファイルの読み込みをファイル末尾まで続けます。 複数の設定ファイルを読み込んでも、複数の出力ページが作成されるわけでは なく、すべてのオプションが反映された一つの出力ページが作成されるということに気をつけてください。

+gother.cfg のようなコマンドにより、コマンドラインからも別の設定ファイルを追加することができます。 (+g とファイル名の間にスペースがないことに気をつけてください。この点は、全てのコマンドライン引数で同様です。) なお、別の設定ファイルを読み込んだとしても、デフォルトの設定ファイル (通常 analog.cfg) の読み込みは やめない ということにも気をつけてください。 デフォルトの設定ファイルを読み込まないようにするには、 -G と同時に +g コマンドも指定する必要があります。 このようになっている理由は、幾つかの異なった設定を使い分けたいという場合に、共通的なオプションを analog.cfg に記述し、個々の設定毎に異なるオプションは、個別の設定ファイル中に記述するという便利な設定を可能にするためです。 コマンドラインオプションとして +g を指定した場合は、デフォルトの設定ファイルと、個別の両方のファイルの両方が読み込まれるわけです。

CONFIGFILE コマンドで指定された設定ファイル名にディレクトリ名が含まれていない場合、 Analog は、特定の場所 (この場所はコンパイル時のオプションです) にある設定ファイルを読み込もうとします。 例えば、 Windows 版の場合、これは Analog の実行ファイルと同じフォルダになります。デフォルト設定ファイルおよび強制設定ファイルについても同様です。 +g オプションで指定された設定ファイルについては、プログラム実行時のカレントディレクトリに対する相対パスになります。

Mac 版においては、設定ファイルを Analog アイコン上にドラッグすることで、デフォルトの設定ファイルの代わりに特定の設定ファイルを使ってプログラムを起動することができます。ファイルの先頭行は "#" から始まっている必要があります。

コマンドラインオプションがないコマンドについても、 +C オプションを用いることで、任意の設定コマンドを 指定することが可能です。 (C は大文字です) 例えば、 +C"UNCOMPRESS *.gz gzcat" という記述により、この設定コマンドを指定できます。


設定コマンドの文法を以下に示します。 設定ファイル中には、通常各行ごとにコマンドが記述されています。各行のハッシュ記号 (#) の後の文字は、コメントとして無視されます。 行の最後にバックスラッシュ (訳者注: 多くの日本語環境では円文字) を用いることで、設定コマンドを複数行にわたって記述することができます。 (ただし、最後の行以外にコメントを入れてはいけません。また全体の長さが 254 文字を越えてもいけません。) 各コマンドは、コマンド名とそれに続く一つもしくは二つの引数とからなりたっています。コマンドに対する引数は、シングルクォート、ダブルクォート、小括弧で囲んでも構いません。なお、引数がハッシュやスペースを含んでいたり、最後の引数の最後の文字がバックスラッシュだったりする場合は、必ず囲んでください。以下に設定コマンドの正しい記述例を示します。
DAILYSUM   OFF   # 曜日別概要は不要である
DAILYREP  "ON"   # 代わりに完全な日報を必要とする
HOSTNAME (Spam Widgets Inc.)  # スペースが含まれるため、囲むことが必要である
LOGFILE logfile1.log,\
logfile2.log     # この行は、前の行と合わせて一つのコマンドである
一般的に、複数回の記述をすることができないコマンド (例えば、OUTFILE) については、後のコマンドが前のコマンドを上書きします。 複数回の記述が可能なコマンド (例えば、LOGFILE 、幾つかのログファイルを読み込むことができるため) については、コマンド中の記述が追加されていきます。 同一の設定ファイル内では LOGFORMATLOGTIMEOFFSET コマンドを LOGFILE コマンドよりも前に記述する必要があるという点を除き、コマンドを記述する順番は重要ではありません。
オプションが現在どのように設定されているか、少しわかりにくいという場合は、コマンドラインから
analog -settings [other options]
を実行するか、設定コマンドに SETTINGS ON を含めてみてください。 この場合、Analog は通常の処理を行なう代わりに、 anlghead.hanlghea2.h のデフォルト値、設定コマンド、コマンドラインオプションに基づいて設定された、すべての変数の値を出力します。 UNIX や Windows を使っている場合は、
analog -settings > file
のようにすることで、結果をファイルに出力できます。 また analog -version と入力することにより、バージョン番号が出力されます。
Analog ホームページ

Stephen Turner
23 August 2003

Analog についての質問はanalog-help メーリングリスト をお使いください。 (訳注: 日本では analog-jp メーリングリスト をご利用ください)

[ 先頭 | 上へ | 前へ | 次へ | 目次 | 索引 ]