HP OpenVMS Systems Documentation |
| 前へ | 次へ | 目次 | 索引 |
カード・リーダからバッチ・ジョブをキューに登録する際に, JOB カードに指定したユーザ名に対応するパスワードを与えます。 PASSWORD カードは省略できませんが,そのアカウントが空文字列のパスワードを持つ場合には,カード上のパスワードは省略できます。PASSWORD コマンドは,カード・リーダからジョブをキューに登録する場合にのみ有効です。カード上の PASSSWORD コマンドの前には,ドル記号($) が必要です。
PASSWORD [パスワード]
パスワードを変更する場合は,SET PASSWORD コマンドを使用します。 SET PASSWORD コマンドについて詳細は,SET PASSWORD の説明を参照してください。 |
パスワード
JOB コマンドに指定されているユーザ名に対応するパスワードを指定します。パスワード・パラメータは,1 文字から 31 文字までの長さです。空文字列のパスワードを持つアカウントから,ジョブをキユーに登録する場合には, PASSWORD カード上のパスワードは省略します。
PASSWORD コマンドは,JOB コマンドとともに使用されます。 JOB カードはカード・リーダからバッチ・ジョブをキューに登録したユーザを識別します。その後,パスワードを与える PASSWORD コマンドを実行します。ここで指定したパスワードが,JOB カードでのユーザ名に対応するパスワードと一致するかどうか,システムがチェックします。パスワードが一致しない場合,ジョブは拒否されます。PASSWORD カードを使用する時に他のユーザにパスワードを見られないように, PASSWORD カードに最初に穴を開ける時,プリンティングを抑止したい場合もあります。
| #1 |
|---|
|
|
JOB および PASSWORD コマンドを実行してから,カード・リーダからバッチ・ジョブをキューに登録しています。 EOJ コマンドは,ジョブの終了を示します。
VAX システムでは,実行イメージ,共有イメージ,デバイス・ドライバ・イメージにパッチを行う Patch ユーティリティを起動します。
Alpha システムと I64 システムでは,特に指定しなければ,絶対仮想アドレスでファイルにパッチを行う PATCH/ABSOLUTE を起動します。
詳細は,パッチ・ユーティリティ内のオンライン・ヘルプを参照してください。
PATCH ファイル指定
ファイル指定
パッチを行うイメージ・ファイル,あるいは PATCH コマンドとパッチを行うイメージ・ファイル名を含むコマンド・プロシージャを指定します。ファイル指定にイメージ・ファイルを指定する場合は,ファイル指定にはファイル名が含まれていなければなりません。ファイル名以外のフィールド ( デバイス,ディレクトリ,ファイル・タイプ,バージョン番号 ) を省略した場合, PATCH コマンドは省略時の設定のデバイスおよびディレクトリを使用し,ファイル・タイプは EXE であることを想定し,イメージ・ファイルの最上位バージョンを使用します。
ファイル指定にコマンド・プロシージャを指定する場合は,ファイル指定パレメータの前にアットマーク (@) を付けなければなりません。ファイル名だけが必要とされます。ファイル名以外のフィールド (デバイス,ディレクトリ,ファイル・タイプ,バージョン番号 ) を省略した場合, PATCH コマンドは省略時の設定のデバイスおよびディレクトリを使用し,ファイル・タイプは COM であることを想定し,コマンド・プロシージャの最上位バージョンを使用します。
アスタリスク (*) およびパーセント記号 (%) などのワイルドカード文字をファイル指定に使用することはできません。
/ABSOLUTE
絶対仮想アドレスでファイルにパッチを行います。これは,Alpha システムと I64 システムでの省略時の指定です。 /ABSOLUTE 機能により,イメージ・ファイルだけでなく任意のファイルに対してそのファイルの先頭からの絶対仮想アドレスでパッチを行うことができます。この機能により,既存のデータを同一長の新しいデータと交換することができます。新しいデータ長が元のデータ長よりも短い場合は,PATCH コマンドは使用中のモードに対応した適切なフィル文字を使用します。たとえば,現在のモードが命令モードである場合は,フィル文字として NOP が使用されます。データ・モード (数値あるいは ASCII) である場合は, フィル文字として NULL が使用されます。PATCH 処理が元のデータ長よりも長いデータ交換を引き起こす場合は,エラー・メッセージを表示してコマンドの実行を停止します。続いて,PATCH あるいは DCL のいずれか適切なプロンプトが表示されます。また,ファイルを破壊する可能性があるため,省略時のパッチ領域はなく,何も作成されることはないことに注意してください。パッチ領域は,イメージ・ファイル以外では意味がありません。
絶対モードでファイルに対してパッチを行う場合は,データ位置を確定するためにシンボルを利用することができないということを銘記しておいてください。細心の注意を払って,正しい位置を修正していることを確認しなければなりません。
ほとんどの PATCH コマンドは通常のとおり動作します。ただし,書き込み操作には REPLACE および DEPOSIT だけを使用しなければなりません。その他のコマンドは読み込み操作に使用することができます。ファイルを破壊する可能性があるため,ALIGN および INSERT などのファイルを拡張するコマンドを使用することは避けなければなりません (これらのコマンドは PATCH コマンドで検出され,交換データが元のデータ長を超えてはならないことを示すエラー・メッセージが表示されます )。
ファイル属性は元の入力ファイルから出力ファイルに引き継がれます。これには,ALQ,TYPE,MRS,RAT,RFM,RAC が含まれます。
/JOURNAL[=ファイル指定]
代替ジャーナル・ファイル指定を指定します。省略時の設定では, PATCH コマンドは現在の省略時の設定から構成されるファイル指定を持つジャーナル・ファイルを作成します。代替ファイル指定を指定する場合は,/JOURNAL 修飾子を使用します。ファイル指定のフィールドを省略した場合, PATCH コマンドは次の省略時の値を適用します。
ファイル指定フィールド 省略時の値 デバイスおよびディレクトリ 現在のプロセスの省略時の設定 ファイル名 入力イメージ・ファイル名 ファイル・タイプ JNL バージョン 1
以降の PATCH セッションでは,このファイルの新しいバージョンが作成されるのではなく,このジャーナル・ファイルに情報が追加されます。
アスタリスク (*) およびパーセント記号 (%) などのワイルドカード文字をファイル指定に使用することはできません。
/NEW_VERSION (省略時の設定)
/NONEW_VERSION
パッチの入ったファイルの新しいバージョンを作成するか,既存のファイルの内容を修正するだけにするかを制御します。 /NEW_VERSION 修飾子を /ABSOLUTE 修飾子とともに使用することで,パッチの入ったファイルの新しいバージョンを作成するか,既存のファイルの内容を修正するだけにするかを制御することができます。 /NEW_VERSIONが省略時の設定です。/NONEW_VERSION を選択した場合, PATCH コマンドの UPDATE はチェックポイント操作として動作します。すなわち,そのファイルに対するすべての修正は,イメージが終了するまで待つことなく,そのファイルに書き込まれます。 /NONEW_VERSION とともに /ABSOLUTE が指定されない場合, /NONEW_VERSION は無視されます。すなわち,ファイルの新しいバージョンが作成されます。パッチの入ったファイルの新しいバージョンを作成するだけの十分なディスク容量がない場合に大きなデータ・ファイルにパッチを行う際は, /NONEW_VERSION を指定する必要があります。
注意
/NEW_VERSION が指定されると,そのファイルは上書きされます。 Ctrl/Y を押すことを含み,ユーザ側で何をしても,上書きすることを防ぐことはできません。したがって,ファイルにパッチを行う場合は,そのファイルのバックアップ・コピーを作成しておかなければなりません。PATCH コマンドはイメージの終了時に常に情報メッセージを表示して,ファイルが上書きされたことを通知します。
/OUTPUT[=ファイル指定]
出力イメージ・ファイル指定を指定します。省略時の設定では,PATCH コマンドは現在の省略時の設定から構成されるファイル指定を持つ出力ファイルを作成します。代替ファイル指定を指定する場合は,/OUTPUT 修飾子を使用します。ファイル指定のフィールドを省略した場合, PATCH コマンドは次の省略時の値を適用します。
フィールド 省略時の値 デバイスおよびディレクトリ 現在のプロセスの省略時の設定 ファイル名 入力イメージ・ファイル名 ファイル・タイプ .EXE バージョン 入力イメージ・ファイルの最新のコピーよりも 1 つだけ大きい
PATCH セッションの最後で PATCH コマンドの UPDATE を実行した場合にかぎり,出力イメージ・ファイルが作成されます。単一セッション内で,複数の UPDATE コマンドを実行することができます。最初の UPDATE コマンドが出力イメージ・ファイルを作成し,以降の UPDATE コマンドはこのファイルに上書きします。
アスタリスク (*) およびパーセント記号 (%) などのワイルドカード文字をファイル指定に使用することはできません。
/UPDATE[=(ECO レベル[,...])] (VAX のみ)
指定した ECO レベルに対応したパッチだけを処理するように要求します。複数の ECO レベルを指定する場合は,各 ECO レベルをコンマで区切り,リストを括弧で囲む必要があります。/UPDATE 修飾子を指定した場合,PATCH コマンドのファイル指定には,処理するパッチを含むコマンド・プロシージャ,あるいは特定のパッチが適用されるイメージ・ファイルを指定します。ファイル指定にコマンド・プロシージャを指定した場合は, /UPDATE 修飾子はコマンド行内のファイル指定よりも前に指定しなければなりません。ファイル指定にイメージ・ファイルを指定した場合は, /UPDATE 修飾子はファイル指定の前に指定することもできますし,その後に指定することもできます。いずれの場合でも,ファイル指定は必要です。
PATCH コマンドが,コマンド・プロシージャ内で /UPDATE 修飾子で指定した ECO レベルに一致しないものを検出した場合, PATCH コマンドはそれ以降のパッチを無視しますがメッセージを表示します。オプションの ECO レベルを省略した場合, PATCH コマンドは提供されているすべてのパッチを処理します。
/VOLUME[=n]
出力ファイルを,マルチボリューム・セットの指定した相対ボリューム番号に置くように要求します。番号を付けないで /VOLUME を指定した場合,入力イメージ・ファイルの相対ボリューム番号が省略時の設定値となります。/VOLUME 修飾子を指定しない場合,出力ファイルはマルチボリューム・セット内の任意の位置に置かれます。
| #1 |
|---|
$ PATCH/ABSOLUTE IMAGE.EXE PATCH>EX/INS 604 00000604: BBSS #07,R1,00000608 PATCH>REPLACE/INS 604='BBSS #07,R1,0608' NEW> 'BBSS #07,R1,0608' NEW> 'CLRL R0' NEW> EXIT old: 00000604: BBSS #07,R1,00000608 %PATCH-E-DATTOOLNG, length of new data may not exceed length of old data PATCH>EX/INS 684 00000684: MOVB #01,(R5)+ PATCH>REPLACE/INS 684='MOVB #01,(R5)+' NEW> 'MOVB #02,(R5)+' NEW> EXIT old: 00000684: MOVB #01,(R5)+ new: 00000684: MOVB #02,(R5)+ PATCH>EX/INS 687 00000687: MOVB #00,(R5)+ PATCH>DEPOSIT/INS 687 NEW> 'CLRB (R5)+' NEW> EXIT old: 00000687: MOVB #00,(R5)+ new: 00000687: CLRB (R5)+ PATCH>INSERT/INS 68D OLD> 'MOVB #10,(R5)+' NEW> 'MOVB #20,(R5)+' NEW> EXIT old: 0000068D: MOVB #10,(R5)+ %PATCH-E-DATTOOLNG, length of new data may not exceed length of old data PATCH>UPDATE %PATCH-I-WRTFIL, updating image file DISK$STARWORK01:[NASR.PATCH]IMAGE.EXE;2 PATCH>EXIT |
省略時の設定としての /NEW_VERSION とともに /ABSOLUTE 修飾子を指定する例です。コマンドがファイルを拡張しようとした場合はエラー・メッセージが返されることに注意してください。
| #2 |
|---|
$ PATCH/ABSOLUTE/NONEW_VERSION LOGIN.COM PATCH>EX/ASCII 57 00000057: 'MANA' PATCH>REPLACE/ASCII 57='MANA' NEW> 'mana' NEW> 'test' NEW> exit old: 00000057: 'MANA' %PATCH-E-REPLACEERR, replacement value too large for location PATCH>replace/ascii 57='MANA' NEW> 'mana' NEW> exit old: 00000057: 'MANA' new: 00000057: 'mana' PATCH>EX/ASCII 24 00000024: 'F$MO' PATCH>INSERT/ASCII 24='F$MO' NEW> 'test' NEW> exit %PATCH-E-INVCMD, invalid command PATCH>UPDATE %PATCH-I-OVERLAY, DISK$STARWORK01:[NASR.PATCH]LOGIN.COM;1 being overwritten PATCH>EX 68:75 00000068: 4349544F 0000006C: 58542E45 00000070: 00010054 00000074: 00100024 PATCH>REPLACE 68 OLD> 4349544F OLD> 58542E45 OLD> 00010054 OLD> EXIT NEW> 6369746F NEW> 68642E65 NEW> 00010074 NEW> EXIT old: 00000068: 4349544F old: 0000006C: 58542E45 old: 00000070: 00010054 new: 00000068: 6369746F new: 0000006C: 68642E65 new: 00000070: 00010074 PATCH>EX/ASCII 68 00000068: 'otic' PATCH>UPDATE %PATCH-I-OVERLAY, DISK$STARWORK01:[NASR.PATCH]LOGIN.COM;1 being overwritten PATCH>EXIT %PATCH-I-OVERLAY, DISK$STARWORK01:[NASR.PATCH]LOGIN.COM;1 being overwritten $ |
PATCH/ABSOLUTE/NONEW_VERSION コマンドの例です。コマンドがファイルを拡張しようとした場合,あるいはコマンドのUPDATE あるいは EXIT が実行される場合,すなわちファイルが上書きされている場合に返されるエラー・メッセージに注意してください。
| #3 |
|---|
$ PATCH AVERAGE /JOURNAL=TEST /OUTPUT=TEST |
これは,イメージ・ファイル AVERAGE.EXE を使用して会話型の PATCH セッションを起動する例です。このセッションで作成されるジャーナル・ファイルおよび出力イメージ・ファイルともに TEST という名前であり,省略時の設定のデバイスおよびディレクトリに置かれます。ジャーナル・ファイルのファイル・タイプは JNL であり,出力イメージ・ファイルのファイル・タイプは .EXE です。
| #4 |
|---|
$ PATCH /UPDATE=(100,102) @ORION $ |
これは,コマンド・プロシージャ ORION.COM を実行する PATCH コマンドの例です。 /UPDATE 修飾子は,ORION.COM に含まれる ECO レベル 100 および 102 で指定されたパッチだけを処理することを要求します。ORION.COM の最初のレコードは入力イメージ・ファイルを指定していなくてはなりません。 2 行目の DCL プロンプト ($) は,パッチが正しく適用されたことを示します。
Phone ユーティリティを起動します。Phone ユーティリティを使用すると,同一システム上の他のユーザ,または DECnet-Plus か DECnet for OpenVMS により使用しているシステムに接続している他のシステムのユーザと通信することができます。Phone ユーティリティについての詳細は,『OpenVMS ユーザーズ・マニュアル』またはオンライン・ヘルプを参照してください。
PHONE [phoneコマンド]
同じコマンド行から,1 つまたは複数の DCL コマンド文字列を実行します。 PIPE コマンドを使用すると,コマンド・パイプライン動作,入出力リダイレクト,および条件付きバックグラウンド実行など, UNIX スタイルのコマンド処理を実行できます。
PIPE コマンド・シーケンス [区切り文字 コマンド・シーケンス]...
コマンド・シーケンス
DCL コマンド,パイプライン,またはサブシェルを指定します。
- DCL コマンド
修飾子,パラメータ,キーワード,および値を入れることができるDCLコマンド文字列- パイプライン
パイプラインは,縦線 (|) 区切り文字で表される パイプ で接続されたパイプライン・セグメント・コマンドのシーケンスです。パイプライン・セグメント・コマンドとは,パイプライン内の DCL コマンドです。パイプは,あるパイプライン・セグメント・コマンドの SYS$OUTPUT を,次のパイプライン・セグメント・コマンドの SYS$INPUT に接続します。パイプラインの形式は,次のとおりです。
パイプライン・セグメント・コマンド | パイプライン・セグメント・コマンド [ |...]
- サブシェル
サブシェルは,区切り文字で区切られ,括弧で囲まれた 1 つまたは複数のコマンド・シーケンスです。サブシェルの形式は,次のとおりです。
(コマンド・シーケンス [区切り文字 コマンド・シーケンス]...)
コマンド・シーケンスでは,入出力をリダイレクトできます。山括弧 (>または<) の前にあるコマンドは,実行中,SYS$INPUT,SYS$OUTPUT,または SYS$ERROR を再定義します。 PIPE コマンドでは山括弧が入出力リダイレクト構文と解釈されるため, PIPE コマンドでディレクトリ指定を表すために山括弧 (<>) を使用することはできません。
区切り文字
PIPE コマンドで指定されたコマンド・シーケンスが処理する動作を決定します。有効な PIPE 区切り文字を 表 DCLII-14 に示します。
表 DCLII-14 PIPEコマンドの区切り文字 区切り
文字動作 | 基本的なパイプの区切り文字。パイプは,あるパイプライン・セグメント・コマンドの SYS$OUTPUT を,次のパイプライン・セグメント・コマンドの SYS$INPUT に接続します。 ; 順次実行。セミコロン (;) の後のコマンド・シーケンスは,先行するコマンド・シーケンスの終了後に実行されます。この区切り文字の前には,空白を入れなければなりません。空白を入れないと,レコード管理システム (RMS) ファイル指定のバージョン番号区切り文字として解析されます。 && 条件付き実行 (成功時)。 2 個のアンパサンド (&&) の後のコマンド・シーケンスは,先行するコマンド・シーケンスが成功した場合にだけ実行されます。 || 条件付き実行 (失敗時)。 2 個の縦線 (||) の後のコマンド・シーケンスは,先行するコマンド・シーケンスが失敗した場合にだけ実行されます。 & バックグラウンド実行。アンパサンド (&) に先行するすべてのコマンド・シーケンスが,サブプロセス環境で非同期に実行されます。 &区切り文字は,SPAWN/NOWAIT コマンドに似ています。 注意:スペースをはさまずに文字列に先行するアンパサンドは,バックグラウンド実行構文でなく,従来の DCL シンボル置換式として解析されます。
@TEE コマンド・ファイル TEE.COM。出力を 2 つのターゲットにリダイレクトするために使用されます ( たとえば,1 つの出力をパイプラインの次のコマンドにリダイレクトし,もう 1 つをファイルにリダイレクトする場合など )。 TEE.COM の使用法については,例を参照してください。
PIPE コマンド行では,& が最高優先順位を持ち,"|",";","&&",および "||" が同じ優先順位でそれに続きます。
PIPE コマンドを使用すると,単一のコマンド行で複数の DCL コマンドを実行して, UNIX スタイルのコマンド処理を実行できます。 PIPE コマンドを使用すると,以下の方法で DCL コマンドを実行することができます。