Hitachi

JP1 Version 11 JP1/Advanced Shell 


9.4.9 adshreadコマンド(指定した応答要求メッセージを応答待ちイベントとして発行する)

形式

adshread [-d] 変数名 応答要求メッセージ

機能

指定された応答要求メッセージを応答待ちイベントとして発行します。発行された応答待ちイベントはJP1/IM - Viewに表示され,運用者はJP1/IM - Viewから応答を入力できます。入力された応答は,指定された変数に格納します。

ただし,ユーザー応答機能の入出力先に標準入出力を指定してデバッグ実行した場合,応答要求メッセージを標準出力に表示し,応答を標準入力から受け取ります。

JP1イベントは,前回のJP1イベントの発行時刻から所定の時間(USERREPLY_JP1EVENT_INTERVALパラメーターで指定)が経過するのを待って発行されます。USERREPLY_JP1EVENT_INTERVALパラメーターについては,「7. 環境ファイルで設定するパラメーター」の「USERREPLY_JP1EVENT_INTERVALパラメーター(JP1イベントの最小発行間隔を指定する)」を参照してください。

引数

-d

デバッグ実行時に,応答要求メッセージの出力先を標準出力にし,応答を標準入力から受け取ります。デバッグ実行以外の場合,指定は無視されます。

「-」で始まる文字列は,「-」以外の文字で始まる文字列が出現するまでの間,オプションの指定として扱われます。不当なオプションが指定された場合はオプションエラーとなります。

変数名 〜<環境変数名>

運用者からの応答内容を格納するシェル変数を指定します。シェル変数は1つしか指定できません。シェル変数を複数指定すると,2つ目以降は応答要求メッセージと解釈されます。

シェル変数が受け取れる文字列は0〜512バイトのASCII文字列です。

ユーザー応答機能の入出力先に標準入出力を指定してデバッグ実行し,標準入力からの応答に513バイト以上の文字列が指定された場合,513バイト以降の文字列は無視されます。また,改行を含む文字列が指定された場合,改行以降の文字列は無視されます。

変数に配列を指定する場合は,要素ごとに指定します。1次元配列の要素数は0〜65,535の間で指定できます。

2次元配列の要素数は要素番号指定ごとに0〜65,535の間で指定できます。

通常の変数指定:adshread ans“処理を続行しますか(Y/N)”

配列指定:adshread ans[1] “処理を続行しますか(Y/N)”

指定したシェル変数の属性に対する,このコマンドの実行結果を次の表に示します。

指定したシェル変数の属性

コマンドの実行結果

読み取り専用

KNAX6008-Eを出力して終了します。

数値型

KNAX7404-Eを出力して終了します。

文字列型/文字列型の配列

値を更新して終了します。

存在しない変数

文字型の変数を新規作成し,値を設定して終了します。

変数名が不正

KNAX6003-Eを出力し終了します。

配列の要素数が範囲外の変数

KNAX6007-Eを出力し終了します。

応答要求メッセージ 〜<任意文字列>((0〜1,023バイト))

応答待ちイベントとして発行する応答要求メッセージを指定します。

応答要求メッセージの文字コードは,同一ホスト内で稼働するJP1/Baseと合わせてください。文字コードが異なると文字化けします。

指定された応答要求メッセージは,コマンド「echo -E 応答要求メッセージ」の実行時と同様の変換内容が応答待ちイベントとして発行されます。複数の応答要求メッセージが指定された場合はエラー(KNAX7403-E)となります。

終了コード

終了コード

意味

対処

リトライの可否

0

正常終了

なし。

1

次に示す続行不可能なエラーが発生

  • メモリ不足

  • 変数名として使用できない変数を検出

  • 内部矛盾を検出

変数名として使用できない変数を指定している場合は,変数の指定を変更してください。

問題が解決しない場合は,システム管理者に連絡してください。

×

2

セマフォ(Mutex)・共有メモリの操作でエラーが発生

メッセージに出力されたエラー情報を基に,「ユーザー応答機能で表示されるエラー情報の意味および対処方法」を参照して対処してください。

×

3

共有メモリに空きがない

USERREPLY_WAIT_MAXCOUNTパラメーターの設定を見直してください。

4

JP1イベントの処理中にエラーが発生

メッセージに出力されたエラー情報を基に,「ユーザー応答機能で表示されるエラー情報の意味および対処方法」を参照して対処してください。

5

JP1イベントの処理中にエラーが発生

メッセージに出力されたエラー情報を基に,「ユーザー応答機能で表示されるエラー情報の意味および対処方法」を参照して対処してください。

×

6

指定されたホストへのJP1イベントの転送に失敗

次の点を確認してください。

  • JP1/IM - Managerがインストールされているホストに,JP1/Baseがインストールされているか

  • JP1/IM - ManagerがインストールされているホストのJP1/Baseのイベントサービスが起動しているか

  • JP1/Advanced Shellがインストールされているホストと,JP1/IM - Managerがインストールされているホストの間の,JP1/Baseのコネクションが確立されているか

7

JP1/Baseのライブラリが見つからない

JP1/Advanced Shellがインストールされているホストに,JP1/Baseがインストールされているか確認してください。

JP1/Baseがインストールされていてこの現象が発生した場合は,JP1/Baseを再インストールしてください。

×

8

自ホストのJP1/Baseのイベントサービスの接続に失敗

JP1/Advanced Shellがインストールされているホストで,JP1/Baseのイベントサービスが起動しているか確認してください。

10

指定された形式が不正

コマンドの形式を確認してください。

×

128+シグナル番号【UNIX限定】

adshreadコマンドがシグナルを受信して終了

ジョブがシグナルを受信して終了していることを確認してください。

×

200【Windows限定】

adshreadコマンドが強制終了

ジョブが強制終了されていることを確認してください。

×

(凡例)

○:リトライ可

×:リトライ不可

−:対象外

注意事項

使用例