日本-日本語
日本HPホーム 製品 & サービス OpenVMS製品情報
≫  お問い合わせ


OpenVMS マニュアル


 

OpenVMS
ドキュメント・ライブラリ

タイトルページ
目次
まえがき
リファレンス・セクション
    ≫ コマンド一覧
    ≫ レキシカル関数
付録 A:廃止されたコマンド
付録 B:DCL整数表現の範囲を超える数値の処理
索引
PDF    Vol.1   Vol.2
OpenVMS ホーム

HP OpenVMS
DCL ディクショナリ


目次 索引




値を SYS$COMMAND ( 通常は,会話型モードのターミナル,または主コマンド・プロシージャの次の行 ) から読み込んで,シンボルに割り当てます。

形式

INQUIRE シンボル名   [プロンプト文字列]


パラメータ



シンボル名

値を割り当てる,1 〜 255 文字までの英数字シンボルを指定します。

プロンプト文字列

INQUIRE コマンドを実行するときに表示されるプロンプトを指定します。文字列は,自動的に大文字に変換されます。また,先行スペースと先行タブおよび後続のスペースと後続のタブは削除され,文字の間の複数のスペースおよびタブは1 つのスペースに圧縮されます。

プロンプトに,小文字や句読点,複数のスペースとタブ,アット・マーク(@) が含まれる場合には,文字列を二重引用符 (" ") で囲みます。プロンプト文字列に二重引用符を使用する場合には,文字列全体を二重引用符で囲み,文字列の中で二重引用符が存在する場所に連続する 2 つの二重引用符 ("")を指定します。

システムがプロンプト文字列をターミナルに表示する場合,通常は文字列の最後にコロン (:) とスペースを表示します ( /PUNCTUATION 修飾子を参照してください )。

プロンプト文字列を指定しない場合には,コマンド・インタプリタは,値を要求するプロンプトとしてシンボル名を使用します。


説明

INQUIRE コマンドは,プロセスの作成時に確立された入力ストリームにプロンプト・メッセージを表示し,入力ストリームからの応答を読み取ります。つまり,INQUIRE コマンドは,会話型で実行されているコマンド・プロシージャで実行される場合,コマンド・プロシージャのネスト・レベルにかかわらず,プロンプト・メッセージは常に端末に表示されます。コマンド・プロシージャの INQUIRE コマンドの入力は,RECALL バッファに入ることに注意してください。

プロンプト文字列に対する応答を入力した場合,その値は,指定されたシンボルに文字列として割り当てられます。小文字は自動的に大文字に変換され,先行および後続のスペースとタブが削除され,文字の間の複数のスペースとタブが単一のスペースに圧縮されます。大文字への変換を禁止し,スペースとタブをそのまま残す場合は,文字列を二重引用符で囲みます。

プロンプト文字列に対する応答を入力する場合,シンボルまたはレキシカル関数を使用するためには,単一引用符 (` ') を使用してシンボルの置換を要求します。

端末から会話型でデータを取得するには,READ コマンドも使用できることに注意してください。READ コマンドは,ユーザが入力したとおりにデータを受け付けます。文字は,自動的には大文字に変換されず,スペースは圧縮されません。ただし,一重引用符を使用してシンボルの置換を要求しても,シンボルとレキシカル関数は変換されません。

バッチ・ジョブに INQUIRE コマンドを入力すると,コマンドは,コマンド・プロシージャの次の行から応答を読み取ります。プロシージャがネストしている場合,第 1 レベルのコマンド・プロシージャから応答が読み取られます。バッチ・ジョブのコマンド・プロシージャの次の行がドル記号 ($) で始まる場合,その行は INQUIRE に対する応答でなく,コマンドとして解釈されます。次に INQUIRE コマンドは,指定されたシンボルに空文字列を割り当て,バッチ・ジョブは INQUIRE コマンドの次の行のコマンドから処理を続けます。


修飾子



/GLOBAL

シンボルが,グローバル・シンボル・テーブルに登録されることを指定します。 /GLOBAL 修飾子を指定しない場合には,シンボルはローカル・シンボル・テーブルに登録されます。

/LOCAL (省略時の設定)

シンボルが,現在のコマンド・プロシージャのローカル・シンボル・テーブルに登録されることを指定します。

/PUNCTUATION (省略時の設定)

/NOPUNCTUATION

ターミナルにプロンプトが表示されるときに,そのプロンプトのあとにコロン(:) とスペースが出力されるかどうかを制御します。コロンとスペースを出力しない場合には,/NOPUNCTUATION を指定します。

#1
$ INQUIRE CHECK "Enter Y[ES] to continue" 
$ IF .NOT. CHECK THEN EXIT 

この INQUIRE コマンドは,ターミナルに次のプロンプト・メッセージを表示します。

Enter Y[ES] to continue: 

INQUIRE コマンドは,上記のようなプロンプトを表示し, CHECK というシンボルに割り当てられる値を要求します。 IF コマンドは,シンボル CHECK に割り当てられた値を評価します。 CHECK に割り当てられた値が真 ( つまり,奇数の数値,T,t,Y,y から始まる文字列,あるいは奇数の数字列 ) の場合には,プロシージャは実行を継続します。

CHECK に割り当てられた値が偽 ( つまり,偶数の数値,T,t,Y,y 以外の文字から始まる文字列,あるいは偶数の数字列 ) の場合には,プロシージャの実行は終了します。

#2
$ INQUIRE COUNT 
$ IF COUNT .GT. 10 THEN GOTO SKIP 
  . 
  . 
  . 
$ SKIP: 

この INQUIRE コマンドは,次のメッセージを表示し, COUNT に割り当てられる値を要求します。

COUNT: 

このあと,このコマンド・プロシージャは, COUNT というシンボルに割り当てられた値を評価し,次に続くコマンドを実行するのか,あるいは制御を SKIPというラベルの行に渡すのかを判断します。

#3
$ IF P1 .EQS. "" THEN INQUIRE P1 "FILE NAME" 
$ FORTRAN 'P1' 

この IF コマンドは,P1 というシンボルが空文字列であるかどうかを調べることで,パラメータがコマンド・プロシージャに渡されたかどうかを調べます。このシンボルの値が空文字列の場合には,パラメータが指定されていないので, INQUIRE コマンドを実行してパラメータを要求します。 P1 が指定されていた場合には,INQUIRE コマンドは実行されず, Fortran コマンドがパラメータに指定された名前のファイルをコンパイルします。


目次 索引

© 2012 Hewlett-Packard Development Company, L.P.