日本-日本語 |
|
|
|
OpenVMS マニュアル |
|
HP OpenVMS
|
目次 | 索引 |
SET VERIFY |
コマンド・プロシージャ中のコマンド行とデータ行を,ターミナルに表示するか,またはバッチ・ジョブ・ログに印刷するかどうかを制御します。 SET VERIFY コマンドによって表示される情報は,コマンド・プロシージャをデバッグするときに利用することができます。
SET VERIFY [=([NO]PROCEDURE, [NO]IMAGE)]SET NOVERIFY
([NO]PROCEDURE, [NO]IMAGE)
片方,または両方のベリファイ・タイプを指定します。プロシージャ・ベリファイを指定する場合,コマンド・プロシージャに含まれる各 DCL コマンド行が,出力装置に書き込まれます。イメージ・ベリファイを指定する場合,データ行(SYS$INPUT 入力ストリームの一部として含まれている入力データ)が,出力装置に書き込まれます。省略時の設定では,SET VERIFY および SET NOVERIFY コマンドは,両方のベリファイ・タイプを設定または解除します。 1 つのキーワードのみ指定した場合は,もう一方のファイ・タイプは変更されません。また,キーワードを 1 つしか指定しない場合には,括弧を省略できます。
省略時の設定では,SET VERIFY および SET NOVERIFY コマンドは,両方のベリファイ・タイプを設定または解除します。会話型で実行されるコマンド・プロシージャの省略時の設定は,SET NOVERIFY です。ただし,システム応答とエラー・メッセージは,常に表示されます。バッチ・ジョブの省略時の設定は,SET VERIFY です。SET VERIFY コマンドを使用して省略時の設定を上書きすると,システムは,各コマンドおよびコマンド・プロシージャのデータ行を読み込みながら表示します。ベリファイが有効になっている場合,コマンド・インタプリタは,最初の走査が終了し,コマンドが解析および実行される前に,各コマンド行を表示します。走査中に行われるシンボルの置換の結果は表示されますが,解析と評価に行われるシンボルの置換の結果は表示されません。
ベリファイの設定を変更すると,新しい設定は,以後実行するすべてのコマンド・プロシージャで有効です。
SET VERIFY コマンドでチェックを設定するには,ファイルの読み込み (R) アクセス権が必要です。
#1 |
---|
$ SET VERIFY = PROCEDURE |
プロシージャ・ベリファイを設定します。イメージ・ベリファイの設定は変更されません。設定されている場合には設定されたままですし,解除されている場合には解除されたままです。
#2 |
---|
$ SET VERIFY $ INDEX == "$INDEX.EXE" $ CONTENTS == "$CONTENTS.EXE" $ TABLE == "$TABLE.EXE" $ SET NOVERIFY $ EXIT |
この例では,コマンド・プロシージャを開始するときに,プロシージャ・ベリファイとイメージ・ベリファイがどちらも設定されます。このため,システムは,プロシージャのすべてのコマンド行とデータ行を,それを読み込んだ際に表示します。プロシージャの最後で, SET NOVERIFY コマンドが実行され,システムの省略時設定 (プロシージャ・ベリファイもイメージ・ベリファイも解除されている状態 ) に戻されます。
#3 |
---|
$ PROC_VER = F$ENVIRONMENT("VERIFY_PROCEDURE") $ IMAGE_VER = F$ENVIRONMENT("VERIFY_IMAGE") $ HOLD_PREFIX = F$ENVIRONMENT("VERIFY_PREFIX") $ SET PREFIX "(!%T)" $ SET VERIFY . . . $ TEMP = F$VERIFY(PROC_VER, IMAGE_VER) $ SET PREFIX "''HOLD_PREFIX'" |
このコマンド・プロシージャでは,現在のプロシージャ・ベリファイ設定,およびイメージ・ベリファイ設定を保存するために,レキシカル関数 F$ENVIRONMENT を使用しています。現在のベリファイ前置文字列も保存しています。SET PREFIX コマンドで,現在のコマンド・プロシージャで使用する前置文字列を設定します。前置文字列には,コマンド・インタプリタ (DCL) が各コマンドを読み込んだ時刻を生成するための FAO 制御文字列と,それを囲む括弧を使用します。そのあと,SET VERIFY コマンドでプロシージャ・ベリファイとイメージ・ベリファイを設定します。その後,レキシカル関数 F$VERIFY を使用して,もとのベリファイ設定に戻しています。また,SET PREFIX コマンドにシンボル HOLD_PREFIX を使用して,もとのベリファイ前置文字列に戻します。このシンボルには,大文字と小文字の区別や特殊文字も保存されています。
#4 |
---|
$ SET VERIFY $ @TEST $ RUN AVERAGE 1 2 3 $ EXIT |
この例の SET VERIFY コマンドは,プロシージャ・ベリファイとイメージ・ベリファイを設定します。 TEST.COM というコマンド・プロシージャが会話型モードで実行されると, AVERAGE というプログラムのコマンド行とデータ行がターミナルに表示されます。データ行は,コマンド・プロシージャ中の DCL プロンプトで始まらない行で入力します。
#5 |
---|
$ SET VERIFY $ COUNT = 1 $ IF P'COUNT' .NES. "" THEN GOTO &P'COUNT' . . . $ EXIT |
このコマンド・プロシージャが会話型モードで実行されると, SET VERIFY コマンドによって,コマンド行とデータ行が表示されます。シンボル置換の第 1 段階で置換されるシンボル ( たとえば,'COUNT' など ) は, SET VERIFY コマンドによって表示されますが,他のシンボルは表示されません。このプロシージャを会話型モードで実行すると,次の行が表示されます。
$ COUNT = 1 $ IF P1 .NES. "" THEN GOTO &P1 . . .
&P1,P1 の値は表示されませんが,P1 の値はシンボル置換の第 3 段階で置換され, &P1 の値は第 2 段階で置換されます。
目次 | 索引 |
|