日本-日本語

製品  >  ソフトウェア  >  OpenVMS  >  マニュアル >  V8.3ライブラリ

OpenVMS マニュアル


HP OpenVMS
DCL ディクショナリ


前へ 次へ 目次 索引


LNM$SYSCLUSTER テーブルにクラスタ・ワイド論理名を割り当てます。

/EXECUTIVE_MODE

SYSNAM(システム論理名)特権が必要です。

指定されたテーブルにエグゼクティブ・モードの論理名を作成します。 /EXECUTIVE_MODE 修飾子を指定しても SYSNAM 特権が与えられていない場合には,ASSIGN コマンドはその修飾子を無視して,スーパバイザ・モードの論理名を作成します。論理名のモードは,登録する論理名テーブルのモードと同じか,またはより低いモードでなければなりません。

/GROUP

SYSPRV(システム特権)または GRPNAM(グループ論理名)特権が必要です。

論理名をグループ論理名テーブルに登録します。UIC ( 利用者識別コード ) のグループ番号が等しい他のユーザは,その論理名をアクセスすることができます。 /GROUP 修飾子は /TABLE=LNM$GROUP の同意語です。

/JOB

論理名をジョブ単位の論理名テーブルに登録します。論理名を作成しているプロセスと同じジョブの階層構造に含まれるプロセスはすべて,その論理名をアクセスすることができます。 /JOB 修飾子は /TABLE=LNM$JOB の同意語です。

/LOG (省略時の設定)



/NOLOG

既存の名前を置換する論理名を定義するときに,メッセージが表示されるかどうかを制御します。

/NAME_ATTRIBUTES[=(キーワード[,...])]

論理名の属性を指定します。省略時の設定では,属性は何も設定されません。属性として,次のキーワードを指定することができます。

CONFINE SPAWN コマンドでサブプロセスを作成した時,論理がサブプロセスにコピーされないことを指定します。このキーワードは,利用者固有のテーブルに論理名を作成する場合にだけ,意味を持ちます。
NO_ALIAS より低い特権の(外側の)アクセス・モードでは,このテーブルに同じ名前の論理名を作成できないことを指定します。同じ名前を持つ他の論理名が,このテーブルより低い特権のアクセス・モードで既に存在する場合には,その論理名は削除されます。

キーワードを 1 つだけしか指定しない場合には,括弧を省略することができます。指定した属性だけが設定されます。

/PROCESS (省略時の設定)

論理名をプロセス論理名テーブルに登録します。 /PROCESS 修飾子は /TABLE=LNM$PROCESS の同意語です。

/SUPERVISOR_MODE (省略時の設定)

スーパバイザ・モードの論理名を,指定されたテーブルに作成します。

/SYSTEM

SYSNAM(システム論理名)または SYSPRV(システム特権)特権が必要です。

論理名をシステム論理名テーブルに登録します。システムのすべてのユーザが,その論理名をアクセスすることができます。 /SYSTEM 修飾子は /TABLE=LNM$SYSTEM の同意語です。

/TABLE=テーブル名

共用可能な論理名テーブルの名前を指定する場合には,そのテーブルに対して書き込み(W)アクセス権が必要です。

論理名が登録される論理名テーブルの名前を指定します。 /TABLE 修飾子を使用すれば,ユーザが定義した論理名テーブル(CREATE/NAME_TABLE コマンドによって作成されるテーブル)や,プロセス論理名テーブル,ジョブ論理名テーブル,グループ論理名テーブル,システム論理名テーブルのいずれも指定することができ,あるいはプロセス論理名ディレクトリ・テーブルまたはシステム論理名ディレクトリ・テーブルを指定することもできます。

複数の等価名を持つ論理名を使ってテーブル名を指定すると,その論理名は最初に検出されたテーブルに登録されます。たとえば,ASSIGN/TABLE=LNM$FILE_DEV を指定した時, LNM$FILE_DEV は LNM$PROCESS と LNM$JOB,LNM$GROUP,LNM$SYSTEM に等しいと定義されているので,この場合には,論理名が LNM$PROCESS に登録されます。

/TABLE 修飾子を明示的に指定しなかった場合には,省略時の設定として, /TABLE=LNM$PROCESS が使用されます。

/TRANSLATION_ATTRIBUTES[=(キーワード[,...])]

等価名修飾子

論理名を等価文字列に変換する際の,1 つまたは複数の属性を指定します。変換属性に対しては,次のキーワードを指定できます。

CONCEALED 等価文字列が隠し装置名であることを指定します。

隠し装置名が定義されると,装置を参照するメッセージの中で,等価文字列ではなく論理名が表示されます。 CONCEALED属性を指定した場合,等価文字列は物理装置名でなければなりません。

TERMINAL 等価文字列の反復変換を行わないことを指定します。したがって,論理名変換は現在の等価文字列で終了します。

キーワードを1つだけしか指定しない場合には,括弧を省略することができます。指定した属性だけが設定されます。

同じ論理名に対して複数の異なる等価文字列を指定する場合は,各等価文字列に対して異なる変換属性を指定できます。

/USER_MODE

ユーザ・モードの論理名を,指定のテーブルに作成します。

プロセス論理名テーブルに作成されたユーザ・モード論理名は,ただ1つのイメージの実行のためにだけ使用されます。すなわち,ユーザ・モードの論理名は,そのプロセス内で実行されるイメージが終了した時に(つまり,イメージを実行する DCL コマンドやユーザ・プログラムが実行を終了した後に)論理名テーブルから削除されます。また,ユーザ・モードの論理名は,コマンド・プロシージャを起動した時や終了した時にも自動的に削除されます。






#1

$ ASSIGN $DISK1:[CREMERS.MEMOS] MEMOSD

この ASSIGN コマンドは,ファイル指定の一部分 $DISK1:[CREMERS.MEMOS]を論理名 MEMOSD に割り当てます。

#2

$ ASSIGN/USER_MODE $DISK1:[FODDY.MEMOS]WATER.TXT TM1

この ASSIGN コマンドは,論理名 TM1 にファイル指定を割り当てています。イメージの実行後に,この論理名は自動的に削除されます。

#3

$ ASSIGN XXX1:[HEROLD]  ED
$ PRINT  ED:TEST.DAT
Job 274 entered on queue SYS$PRINT
 

この ASSIGN コマンドは,ED という論理名を,XXX1 というディスクの[HEROLD]というディレクトリ名に割り当てます。この後,ED という論理名を参照すると,この論理名が指定されたディスクおよびディレクトリとして使用されます。 PRINT コマンドは,XXX1:[HEROLD]TEST.DAT というファイルを印刷するジョブを,システム・プリンタのキューに登録します。

#4

$ ASSIGN YYY2:  TEMP:
$ SHOW LOGICAL TEMP
   "TEMP" = "YYY2:" (LNM$PROCESS_TABLE)
$ DEASSIGN TEMP
 

この ASSIGN コマンドは,TEMP という論理名を YYY2 という装置に割り当てます。 TEMP は,スーパバイザ・モードで作成され,プロセス論理名テーブルに登録されます。 SHOW LOGICAL コマンドは,論理名の割り当てが実行されたかどうかを確認します。この ASSIGN コマンドでは,TEMP という論理名の最後にコロンが指定されていますが,コマンド・インタプリタは論理名テーブルにその論理名を登録する前に,コロンを削除します。したがって,この後の DEASSIGN コマンドでは, TEMP だけを指定し,コロンは省略することができます。 SHOW LOGICAL コマンドでは,コロンを省略(たとえば,SHOW LOGICAL TEMP)しなければなりません。

#5

$ MOUNT TTT1: MASTER TAPE
$ ASSIGN TAPE:NAMES.DAT PAYROLL
$ RUN PAYROLL
   .
   .
   .
 

この例では,装置 TTT1: にマウントされたボリューム(ラベル名 MASTER)に論理名 TAPE を MOUNT コマンドで割り当てています。 ASSIGN コマンドで,論理装置 TAPE 上のファイル NAMES.DAT に論理名 PAYROLL を割り当てています。したがって,プログラムが論理名 PAYROOL で参照する OPEN 要求を出すと,ボリューム・ラベル名 MASTER というテープ上のファイル NAMES.DATがオープンされます。

#6

$ CREATE/NAME_TABLE TABLE1
$ ASSIGN/TABLE=LNM$PROCESS_DIRECTORY TABLE1,-
_$ LNM$PROCESS,LNM$JOB,LNM$GROUP,LNM$SYSTEM LNM$FILE_DEV
$ ASSIGN/TABLE=TABLE1 -
_$ /TRANSLATION_ATTRIBUTES=CONCEALED  DKA1:  WORK_DISK
 

この例の CREATE/NAME_TABLE コマンドは,プロセス固有の論理名テーブル TABLE1 を作成します。

最初の ASSIGN コマンドは,ファイル指定や装置名の論理名変換の際に TABLE1 が最初に検索されるようにしています(これは,TABLE1 が論理名 LNM$FILE_DEV の等価文字列の最初の項目であり,LNM$FILE_DEV が装置名やファイル指定を変換する際の論理名テーブル検索の省略時の順序を決めるものだからです)。

2番目の ASSIGN コマンドは,WORK_DISK という論理名を DKA1 という物理装置に割り当て,その論理名を TABLE1 に登録します。この論理名は,隠し属性を持っています。したがって,システム・メッセージには, WORK_DISKという論理名が表示されます。

#7

$ ASSIGN/TABLE=LNM$PROCESS/TABLE=LNM$GROUP  DKA0:  SYSFILES
$ SHOW LOGICAL  SYSFILES
  "SYSFILES" = "DKA0:" (LNM$GROUP_000240)
 

この ASSIGN コマンドには,矛盾する修飾子が含まれています。このような場合には,最後に指定された修飾子を使用します。したがって,SHOW LOGICAL コマンドからの応答は,論理名がグループ論理名テーブルに登録されたことを示しています。

#8

$ ASSIGN/TABLE=LNM$GROUP 'F$TRNLNM("SYS$COMMAND")' TERMINAL
%DCL-I-SUPERSEDE, previous value of TERMINAL has been superseded
 

この例の ASSIGN コマンドは,レキシカル関数 F$TRNLNM を用いて論理名 SYS$COMMAND を変換し,その結果を論理名 TERMINAL の等価名として使っています。 ASSIGN コマンドからのメッセージは,論理名 TERMINAL のエントリが既にグループ論理名テーブルに存在していたため,以前のものが新しいエントリに置き換えられたことを示しています。

このコマンドを LOGIN.COM ファイルで使用すれば,各ターミナル・セッション開始時に論理名 TERMINAL が再定義されます。現在のプロセスやそのサブプロセスでは,論理名 TERMINAL を使用して現在の端末にメッセージを出力できます。

#9

$ ASSIGN DALLAS::DMA1:  DATA

論理名 DATA にリモート・ノード DALLAS 上の装置 DMA1 を割り当てています。これ以降の論理名 DATA の参照は,リモート・ノード上のディスクに対するものとなります。

#10

$ CREATE AVERAGE.COM
$ ASSIGN/USER_MODE SYS$COMMAND:  SYS$INPUT
$ EDIT/EDT AVERAGE.FOR
$ FORTRAN AVERAGE
$ LINK AVERAGE
$ RUN AVERAGE
87
80
90
9999
$ EXIT
[Ctrl/Z]
$ @AVERAGE.COM
 

CREATE コマンドでコマンド・プロシージャ AVERAGE.COM を作成しています。

コマンド・プロシージャ内の ASSIGN コマンドは,/USER_MODE 修飾子で一時的に SYS$INPUT の値を変更しています。EDT エディタが起動されると,ターミナルから入力を受け取ります。このようにして,プログラム AVRAGE.FOR を会話形式で作成または変更できます。

EDT を終了すると,ユーザ・モードの SYS$INPUT は削除され,元の値(コマンド・プロシージャによって与えられた入力ストリーム)に戻ります。したがって,プログラム AVERAGE はコマンド・プロシージャ内から入力を受け取ることになります。




ASSIGN/MERGE

1 つのキューからすべてのジョブを削除し,そのジョブを他の既存のキューに登録します。実行中のジョブに対しては影響しません。

両方のキューに対する管理 (M) 権が必要です。




形式

ASSIGN/MERGE ターゲット・キュー[:] ソース・キュー[:]




パラメータ



ターゲット・キュー[:]

ジョブを登録するキューの名前を指定します。

ソース・キュー[:]

ジョブが削除されるキューの名前を指定します。



説明

ASSIGN/MERGEコマンドは,あるキューから待ち状態のジョブを削除して,別のキューに登録します。このコマンドは,ターゲット・キューおよびソース・キュー内の実行中のジョブには影響しません。ソース・キューで現在実行中のジョブは,そのキューで実行を終了します。このコマンドは,バッチ・キューにも使用できますが,一般にプリント・キューに使用します。

ASSIGN/MERGE コマンドは,特にライン・プリンタの動作が不調な場合に便利です。 ASSIGN/MERGE コマンドを入力すると,既存のジョブを別の印刷装置に変更できます。ジョブの損失または中断なしにマージ操作を実行するには, STOP/QUEUE/NEXT コマンドでソース・キューを停止させます。次に,STOP/QUEUE/REQUEUE コマンドを入力して,ソース・キューに入っている現在のジョブをターゲット・キューに移動します (STOP/QUEUE/REQUEUE コマンドでジョブを移動できなかった場合は, STOP/QUEUE/RESET コマンドを使用してキューの制御を回復してください)。 STOP コマンドを入力してから,ASSIGN/MERGE コマンドを入力してください。






#1

$ STOP/QUEUE/NEXT LPB0
$ STOP/QUEUE/REQUEUE=LPA0 LPB0
$ ASSIGN/MERGE LPA0 LPB0

この例では,STOP/QUEUE/NEXT コマンドは,キュー LPB0 上で別のジョブが実行されるのを防ぎます。 STOP/QUEUE/REQUEUE コマンドは, LPB0 上で実行中のジョブをキュー LPA0 に登録し直します。 ASSIGN/MERGEコマンドは,LPB0 プリンタ・キューから残りのジョブを削除し,それらを LPA0 プリンタ・キューに登録します。




ASSIGN/QUEUE

論理キューを単一の実行キューに割り当てます (リダイレクトします)。 ASSIGN/QUEUE コマンドは,プリンタ・キューまたはターミナル・キューに対してだけ使用できます。

両方のキューに対する管理(M)権が必要です。




形式

ASSIGN/QUEUE キュー名[:] 論理キュー名[:]




パラメータ



キュー名[:]

実行キューの名前を指定します。論理キュー,総称キュー,バッチ・キューの指定はできません。

論理キュー名[:]

論理キューの名前を指定します。



説明

ASSIGN/QUEUE コマンドは,論理キューと実行キューの間に,1 対 1 対応を設定します。論理キューに登録されたジョブは,印刷するために,常に指定された実行キューに登録されます。

ASSIGN/QUEUE コマンドを入力すると,論理キューは実行できません。

論理キューを初期化したら,ASSIGN/QUEUE コマンドを使用して論理キューを既存の実行キューと対応付けてください。論理キューを設定するには,次の手順に従ってください。

  1. INITIALIZE/QUEUE コマンドで,論理キューを初期化します (/START 修飾子は使用しないでください )。

  2. 既存の実行キューに論理キュー名を割り当てます。

  3. START/QUEUE コマンドで,論理キューを開始します。

論理キューに対して START/QUEUE コマンドを入力すると,ジョブを処理するために論理キューに送ることができます。






#1

$ INITIALIZE/QUEUE/DEFAULT=FLAG=ONE/START LPA0
$ INITIALIZE/QUEUE TEST_QUEUE
$ ASSIGN/QUEUE LPA0 TEST_QUEUE
$ START/QUEUE TEST_QUEUE

この例では,まず,LPA0 というプリンタ・キューが初期化され開始されます。LPA0 キューは,各ジョブに先立ってフラグ・ページが印刷されるように設定されます。2 番目の INITIALIZE/QUEUE コマンドは, TEST_QUEUE という論理キューを作成します。ASSIGN/QUEUE コマンドは,プリンタ・キュー LPA0 に論理キュー TEST_QUEUE を割り当てます。 START/QUEUE コマンドは,その論理キューを開始します。

#2

$ INITIALIZE/QUEUE/START LPB0

この例では,ASSIGN/QUEUE コマンドは必要ありません。初期化されているのは,論理キューではなく,プリンタ・キューであるためです。 LPB0 はライン・プリンタの名前です。 INITIALIZE/QUEUE/START コマンドを入力したあとは, LPB0 に印刷ジョブをキュー登録することができます。




ATTACH

現在処理中のプロセスから,指定したプロセスへ制御を移します (元のプロセスは,この後ハイバネートします)。

使用している端末にメールボックスが対応づけられている場合は, ATTACH および SPAWN コマンドは使用できません。




形式

ATTACH [プロセス名]




パラメータ



プロセス名

制御を移す親プロセス,またはサブプロセスの名前を指定します。ここで指定するプロセスは既に存在し,現在処理中のジョブの一部で,現在処理中のプロセスと同じ入力ストリームを共有していなければなりません。ただし現在のプロセス,または /NOWAIT 修飾子を使用して作成したサブプロセスは指定できません。

プロセス名は,1 から 15 文字の英数字で指定します。指定したプロセスに接続できない場合は,エラー・メッセージが表示されます。

プロセス名 パラメータは,/IDENTIFICATION 修飾子と同時に指定できません。




説明

ATTACH コマンドを使用すると,入力ストリームを別のプロセスに接続できます。また,1 つのサブプロセスから別のサブプロセス,または親プロセスに制御を移すことができます。

ATTACH コマンドを入力すると,親プロセス,または "アタッチ元" プロセスはハイバネート状態になり,入力ストリームは指定した "アタッチ先" プロセスに接続されます。 ATTACH コマンドを使用すると,同一ジョブ内のサブプロセス (SPAWN/WAIT または別の ATTACH コマンドによりハイバネート状態になっている ) に,制御を移すことができます。現在処理中のプロセス,現在処理中のジョブの一部ではないプロセス,存在しないプロセスに制御を移すことはできません。これらのプロセスに制御を移そうとすると,エラー・メッセージが表示されます。

また SPAWN/WAIT コマンドと ATTACH コマンドを使用すると,作成したサブプロセスを終了しなくても親プロセスに制御を戻すことができます。詳細は,SPAWN コマンドの説明を参照してください。




修飾子



/IDENTIFICATION=pid

端末制御を移すプロセスのプロセス ID(PID) を指定します。先行の 0 は省略できます。/IDENTIFICATION 修飾子は, プロセス名 と同時に指定できません。

/IDENTIFICATION 修飾子を省略した場合は,プロセス名を指定しなければなりません。






#1

$ ATTACH JONES_2

この例で ATTACH コマンドは,端末制御をサブプロセス JONES_2 に移しています。

#2

$ ATTACH/IDENTIFICATION=30019

この例で ATTACH コマンドは,現在処理中のプロセスから, PID が 30019 であるプロセスに制御を移します。 /IDENTIFICATION 修飾子が指定されているので, プロセス名 は省略されています。


前へ 次へ 目次 索引



         印刷用画面へ

プライバシー 本サイト利用時の合意事項