[ 前のページ ]
[ 次のページ ]
[ 目次 ]
[ 索引 ]
[ DOC Home ]
本章では,ファイルを作成したり,処理する方法について,ローカルで作業する場合と,DECnet for OpenVMS ネットワークを介して作業する場合について説明します。 特に,次のことについて説明します。
詳細は,以下のマニュアルを参照してください。
ファイルとは,人間と機械の双方が扱えるデータを格納するために, OpenVMSオペレーティング・システムが使用する単位のことです。ファイルに名前を付ける場合には, システムがそのファイルの格納場所や内容を特定できるような情報を指定しなければなりません。 完全なファイル指定( 第4.1.1項を参照)を指定する必要はありませんが, システムとユーザの両方が識別できるようなファイル名あるいはファイル・ タイプを指定しなければなりません。たとえば, PAYROLL_MEMO.TXTのようなファイル指定です。ここで,PAYROLL_MEMOはファイル名を,.TXT はファイル・タイプを表します。
システムの省略時の設定を無効にする場合,またはネットワークを介してファイル操作を行う場合には, 完全なファイル指定が必要です。完全なファイル指定とは, 次の形式のファイル指定のことです。
ノード::デバイス:[ディレクトリ]ファイル名.ファイル・タイプ;バージョン
次に,各要素について説明します。
ノード | ネットワーク・ノード名。OpenVMS用DECnet をサポートするシステムにだけ適用される。磁気テープに格納されたファイルには適用されない。 |
デバイス | ファイルが格納または書き込まれる物理デバイスの名前。 物理デバイスに格納されているファイルのアクセスについては,第12.2節を参照。 |
ディレクトリ | ファイルを登録するディレクトリの名前。 ディレクトリ名は,大括弧([])または山括弧(<>)で区切る。磁気テープに格納されたファイルには適用されない。 |
ファイル名 | ファイルの名前。ハイフンとアンダスコアを含む, 最大39の英数字を指定できる。 |
ファイル・タイプ | ファイルの中の構造またはデータのタイプを識別するもの。 ファイル・タイプには,ハイフンとアンダスコアを含む最大39 の英数字を指定できる。 |
バージョン | ファイルのバージョン番号。バージョンは10進数で表され, ファイルの新しいバージョンを作成するたびに1ずつ大きくなる。 ユーザが指定しない場合には,システムが自動的にバージョン番号を割り当てる。 |
ファイル指定の各要素を指定する場合には,次の規則に従います。
コマンドによっては,ファイル・タイプを省略した場合に,システムが省略時の値を適用することがあります。 次の表に,DCLコマンドが使用する一般的な省略時のファイル・ タイプの一部を示します。
ファイル・タイプ | 内容 |
---|---|
.CLD | コマンド定義ファイル |
.COM | コマンド・プロシージャ・ファイル |
.DAT | データ・ファイル |
.DIF | DIFFERENCES コマンドによって作成される出力ファイル |
.DIR | ディレクトリ・ファイル |
.DIS | MAILコマンドの配布リスト・ファイル |
.EDT | EDTエディタのスタートアップ・ コマンド・ファイル |
.EXE | リンカによって作成される実行可能プログラム・ イメージ・ファイル |
.HLB | ヘルプ・テキスト・ライブラリ・ファイル |
.HLP | ヘルプ・ライブラリの入力ソース・ ファイル |
.INI | 初期化ファイル |
.JOU | EDT エディタによって作成されるジャーナル・ファイル |
.LIS | 言語コンパイラまたはアセンブラによって作成されるリスト・ ファイル,またはPRINTコマンドとTYPE コマンドの省略時の入力ファイル |
.LOG | バッチ・ジョブ出力ファイル |
.MAI | MAILメッセージ・ファイル |
.MEM | DIGITAL Standard Runoff (DSR)によって作成される出力ファイル |
.PS | PostScript形式のファイル |
.REGIS | Regis形式のファイル |
.RNO | DIGITAL Standard Runoff (DSR)の入力ソース・ファイル |
.SIX | シクセル・グラフィック・ファイル |
.SYS | システム・イメージ |
.TJL | DECTPUとACL エディタによって作成されるジャーナル・ファイル |
.TLB | テキスト・ライブラリ・ファイル |
.TMP | 一時的ファイル |
.TPU | EVEエディタのコマンド・ ファイル |
.TPU$JOURNAL | EVEエディタによって作成されるジャーナル・ファイル |
.TXT | テキスト・ライブラリの入力ファイルまたはMAIL コマンド出力 |
次の表に,高級言語ソース・プログラムの省略時のファイル・タイプを示します。
ファイル・タイプ | 内容 |
---|---|
.ADA | DEC Adaコンパイラの入力ソース・ファイル |
.BAS | BASICコンパイラの入力ソース・ ファィル |
.B32 | VAX BLISS-32コンパイラの入力ソース・ファイル |
.C | DEC Cコンパイラの入力ソース・ファイル |
.COB | Open VMS VAX システム上のVAX COBOLコンパイラおよびOpenVMS Alphaシステム上のDEC COBOL コンパイラの入力ソース・ファイル |
.FOR | DEC Fortran (OpenVMS VAXシステム用DEC Fortran はこれまでVAX Fortranだった)の入力ソース・ファイル |
.M64 | OpenVMS Alpha MACRO-64アセンブラの入力ソース・ファイル |
.MAP | リンカ・ユーティリティによって作成されるメモリ割り当てマップ |
.MAR | OpenVMS Alpha用VAX MACROアセンブラまたはMACRO-32コンパイラの入力ソース・ ファイル |
.MLB | MACROアセンブラのマクロ・ライブラリ |
.MSG | メッセージのテキストを指定するソース・ ファイル |
.OBJ | 言語コンパイラまたはアセンブラによって作成されるオブジェクト・ ファイル |
.OLB | オブジェクト・ モジュール・ライブラリ |
.OPT | LINKコマンドへの入力用オプション・ファイル |
.PAS | Pascalコンパイラの入力ソース・ファイル |
.PLI | PL/Iコンパイラの入力ソース・ ファイル |
.STB | リンカ・ユーティリティによって作成されるシンボル・テーブル・ファイル |
.UPD | VAX MACROソース・ プログラムの変更用更新ファイル(SUMSLPエディタへの入力ともなる) |
すべてのファイルには,ファイル名とファイル・タイプに加えて,バージョン番号があります。 バージョン番号は,ファイルのバージョンを表す1 〜32,767の10進数です。ファイルを作成すると,ファイルに1というバージョン番号が割り当てられます。
1つのファイルに対して複数のバージョンが存在することもあります。バージョン番号の指定がない場合には, バージョン番号の最も大きいファイルが使用されます。 バージョン番号として0を指定した場合には,既存の最大バージョンが使用されます。 ファイルの新しいバージョンを作成するコマンド, アプリケーション,テキスト・エディタ(EVEなど)を使用してファイルを変更した場合, ファイル名は変更されませんが,バージョン番号は1だけ大きくなります。
バージョン番号の前には,セミコロンまたはピリオドを入れます。ファイル指定を表示する場合は, ファイル・バージョン番号の前にセミコロンが表示されます。
ゼロまたは負のバージョン番号を指定すると,ファイルのバージョンを相対的に表すことができます。 ゼロを指定すると,ファイルの最新(最も大きい) バージョンが使用されます。-1を指定すると最新バージョンの前のバージョン,-2 を指定するとその前のバージョンが使用されます。以下同様です。 ファイルの最も古い(最も小さい)バージョンを探す場合には,バージョン番号として-0 を指定します。バージョン番号が32767より大きいファイルを作成することはできません。 バージョン番号が32767より大きい新しいファイルを作成しようとした場合には, エラー・メッセージが表示されます。
CREATE/DIRECTORY,SET DIRECTORY,またはSET FILEコマンドで/VERSION_
LIMIT修飾子を指定すると,ファイルのバージョン番号を制御できます。
バージョンの上限値を超えると,最も小さいバージョン番号のファイルが自動的に削除されます。
たとえば,バージョンの上限値が5の場合には,
ファイルの6番目のバージョン(ACCOUNTS.DAT;6)を作成すると,ファイルの最初のバージョン(ACCOUNTS.DAT;1)
が削除されます。DIRECTORY/FULLコマンドを実行すると,
作成できるバージョンの制限を確認できます。作成できるバージョンの制限は,
File attributes:
フィールドに表示されます。
ノード指定の形式は,次のとおりです。
ノード["アクセス制御文字列"]::
ファイル指定の一部としてノード名を入力する場合には,次の規則に従います。
アクセス制御文字列の後に,ダブルコロンを付けること。
OpenVMSシステムでは,完全なノード名を指定できます。しかし, 完全なノード名を認識するためには,DECnet-Plusソフトウェアがインストールされていなければなりません。
完全なノード名の長さは最大255文字であり,次の文字を除き,他の文字はすべて使用できます。
完全なノード名が引用符(" ")で囲まれている場合には,単独で使用する引用符を除き, 他のすべての文字を使用できます。ノード名の内部で引用符を使用するときは,2 つの連続する引用符を指定し,引用符も含めて文字列全体を引用符で囲まなければなりません。
OpenVMSソフトウェアでは,ノード名の構文に関していくつかの規則を設定していますが, 実際の正しいノード名は,システムで実行されているDECnet ソフトウェアによって制限されます。完全なノード名についての詳しい説明は,DECnet-Plus に関するマニュアルを参照してください。(有効な文字コードを含め) 構文規則についての詳細は,『DECnet-Plus DECdns Management Guide』を参照してください。
次の例では,ノード名の内部で引用符を使用しているため,文字列全体が引用符に囲まれています。
"MARY:.UNIVERSITY.""SCIENCE LAB"""
次の例は正しい完全なノード名を示しています。
リモート・ノードのファイルにアクセスすると,DECnetはリモート・ノードでログインします。 このためには,そのノードについてのログイン情報が必要になります。 ノードについてのログイン情報は,アクセス制御文字列で指定できます。 アクセス制御文字列を省略した場合には,リモート・ ノードに送られるログイン情報は次のようにして判別されます。
アクセス制御文字列を指定すると,システムはその文字列を使用してリモート・ ノードにログインします。ファイル指定の残りの部分は,リモート・ ノードに渡されてから,そこで解釈されます。
ファイル指定の一部としてローカル・ノードを指定すると,ローカル・ノードにファイルが存在していても, システムはネットワークを介してログインしてファイル操作を行います。 リモート・システムへのアクセス方法については, 『OpenVMSシステム管理者マニュアル』を参照してください。
ネットワーク・ファイル指定には,次の3つの形式があります。
どの形式でも,ノード指定にアクセス制御文字列を入れることができます。 詳細は,『DECnet for OpenVMS Networking Manual』を参照してください。
ファイルの一般的な形式を以下に示します。
ノード::デバイス:[ディレクトリ]ファイル名.タイプ;バージョン
フォーリン・ファイル指定とは,OpenVMS構文に従わないファイルのことである。 たとえば,次のようなものがある。
ノード::"フォーリン・ファイル指定文字列"
この例のファイル名には,疑問符(?)という有効なファイル名文字として認識されない文字が含まれているため, ファイル名は引用符(" ")で囲まなくてはなりません。 また,アクセス中のリモート・ノードのオペレーティング・ システムが認識する形式になっていなければなりません。
$ COPY BOSTON::"TEST?.DAT" *
タスク指定文字列は,リモート・ノードで実行されるプログラムを識別します。 プログラムの内部でタスク指定文字列を使用すれば,プログラムはリモート・ ノードの他のプログラムと通信できます。タスク指定文字列の形式は次のとおりです。
ノード::"タスク指定文字列"
この例のタスク指定は,リモート・ノードBOSTONのプログラムTEST2を表しています。
BOSTON::"TASK=TEST2"
アクセス制御文字列は,リモート・ノード上でログインできるアカウントを指定します。 アクセス制御文字列を持つノード名は,次のような形式になります。
ノード"アクセス制御文字列"::
アクセス制御文字列は引用符("")で囲み,その後にダブルコロン(::)を付けます。
OpenVMSシステムの場合,アクセス制御文字列は,ユーザ名と,それに続く1 つ以上のスペースまたはタブとパスワードから構成されます。ACLについての詳しい説明は, 第19章を参照してください。
次の例では,BOSTONはネットワーク・ノード名です。"HIGGINS ETUHCARAP"はアクセス制御文字列です。
$ DIR BOSTON"HIGGINS ETUHCARAP"::WEASEL2:[BORIS]ACCOUNTS.DAT
1つのDCLコマンドを,一度に1つのファイルではなく,複数のファイルに適用する場合には, ワイルドカード文字を使用します。入力されたファイル指定の一部に一致するファイルであれば, コマンドが適用されます。
本章で示す例の多くは,ファイル操作でのワイルドカード文字の使い方を示しています。DCL コマンドでのワイルドカード文字の使い方は,コマンドによって異なります。
多くのDCLコマンドでは,ディレクトリ名,ファイル名,またはファイル・ タイプを指定する場合,ワイルドカードとしてアスタリスク(*)またはパーセント記号(%) を使用できます(ディレクトリに対して使用できるワイルドカードについての説明は, 第5.5 節を参照してください)。バージョン番号を指定する場合,アスタリスクは使用できますが, パーセント記号は使用できません。
Extended File Specificationsを使用するシステムで作業をしている場合, 別のワイルドカード・オプションについては,『OpenVMS Extended File Specifications の手引き』を参照してください。
アスタリスク(*)・ワイルドカード文字を使用する場合には,次の条件を満たしてください。
アスタリスク(*)・ワイルドカード文字は次の場合に使用できます。
$ PRINT [FROGMAN]*.*;*
$ TYPE *.DAT;*
$ DIRECTORY [FROGMAN.*]*.DAT
$ TYPE [*.*.*]AVERAGE.*;*
このファイル指定は,現在の省略時のディスク上の2番目のレベルのサブディレクトリの中で, 任意のファイル・タイプのAVERAGEというファイル名のすべてのファイルの全バージョンを選択します。 たとえば, このファイル指定では,[A.B.C]AVERAGE.DATは選択しますが,[X.Y]AVERAGE.DAT は選択しません。
パーセント記号(%)ワイルドカード文字は,ファイル指定の中の任意の1 文字の代わりとして使用します。パーセント記号は,ディレクトリ,ファイル名, ファイル・タイプの各フィールドで使用できます。ただし,バージョン番号フィールドや ANSI 磁気テープ・ファイル指定では使用できません。 パーセント記号は,1つのフィールドの中の1文字と置き換えられるので, 置き換える対象となる文字が必要だからです。
パーセント記号はいくつでも指定でき,他のワイルドカード文字と組み合わせることもできます。
次の例は,DISTRICTの後に1文字が続くファイル名で,ファイル・タイプが.DAT であるファイルの最新バージョンを表示します。
$ TYPE [JONES.TAXES.PROPERTY]DISTRICT%.DAT
この例で表示されるのは,ファイルDISTRICT1.DAT,DISTRICT2.DAT, DISTRICT3.DATなどです。ファイルDISTRICT4_5.DATは,DISTRICTの後に2 文字以上続いているので表示されません。また,ファイルDISTRICT.DATも表示されません。
たとえば,次のような指定も可能です。
$ [MA*]INS%%%A*.J*;*
これ以降の節では,OpenVMS環境でサポートされるファイル名の他のタイプについて説明します。
ファイル名とファイル・タイプのフィールドは,空にできます。たとえば, 次のようなファイル指定も可能です。
.TMP | (ファイル名は空値) |
TEMP. | (ファイル・タイプは空値) |
DCLコマンドの中でファイルを指定する場合には,コマンドが省略時のファイル・ タイプを使用しているときに,ファイル名の後のピリオドが付いているかどうか注意してください。
たとえば,FORTRANコマンドは,省略時には.FORというファイル・タイプを使用します。 次のコマンドは,それぞれ別の結果になります。
$ FORTRAN TEMP $ FORTRAN TEMP.
最初の例では,ファイル・タイプが省略されているので,FORTRANコンパイラはTEMP.FOR という名前のファイルを探します。2番目の例では,ファイル名の後のピリオドが空のファイル・ タイプであることを示しているので, コンパイラはTEMP.という名前のフアイルを探します。
標準ファイル名に加えて,オペレーティング・システムはANSIラベルの磁気テープの代替ファイル命名規則もサポートします。 次の形式をとります。
"ファイル名".;バージョン
ファイル名には,ASCII "a"文字セットの1〜17文字を指定できます。この文字セットには, 数字,英大文字,スペースに加えて,次の文字も含まれます。
! " % ' ( ) * + , - . / : ; < => ? & _
また,ANSIファイル名では,ワイルドカード(*)も使用できます。
これ以降の節では,OpenVMS環境でサポートされるツールやコマンドを使用して, ファイルを作成および変更する方法を説明します。
テキスト・ファイルを作成したり変更したりするための機能を最も豊富に備えた会話型ツールは, 会話型エディタです。OpenVMSに標準装備されているテキスト・ エディタは,EVEとEDTですが,これ以外のエディタも使用できます。
また,DCLのコマンドCREATE,COPY,RENAMEを使用しても,ファイルを作成したり変更したりできます。 この節では,これらのコマンドを使用して, ファイルを作成したり変更したりする方法について説明します。
Extended File Specificationsを使用する環境で作業を行っている場合, その環境におけるファイルの作成,コピーについての詳しい情報については, 『OpenVMS Extended File Specifications の手引き』を参照してください。
CREATEコマンドはテキスト・ファイルを作成します。CREATEコマンドでファイルを変更することはできません。 また,Returnを押した後は,前の行に戻って変更することもできません。CREATE コマンドで作成したファイルを変更するには,EDT やEVEなどのテキスト・エディタを使用します。Ctrl/Z はファイルの終端を知らせるもので,これを押すと,DCLコマンド・ レベルに戻ります。
次の例では,CREATEコマンドを入力し,テキスト行を入力することにより,POUND.LIS という名前のファイルを作成します。
$ CREATE POUND.LIS Tag #23, Elmer Doolittle, notified Tag #37, James Watson, notified No tag, light brown, 30 lbs., looks part beagle <Ctrl/Z>
COPYコマンドを使用すると,次のものを複製(コピー)できます。
$ COPY FEES.DAT RECORDS.DAT
$ COPY *.TXT;* [SAVETEXT]*.*;*
$ COPY/SINCE=11-DEC-1996/MODIFIED [JONES.LICENSES.DOG]*.* *
COPYコマンドで,ファイルを連結することができます。たとえば,省略時のディレクトリでFEES1.DAT をFEES.DATに追加する(FEES.DATの新しいバージョンを作成する) 場合には,次のように入力します。
$ COPY FEES.DAT,FEES1.DAT FEES.DAT
FEES.DATの後のコンマとファイル名FEES1.DATの間に,スペースは必要ありません。
別のノードにあるファイルを使用中のノードにコピーするには,COPYコマンドを使用します。 たとえば,ノードCHAOS上のDISK2:[PUBLIC]にあるすべてのファイルの最新バージョンを, 省略時のディレクトリに同じ名前でコピーする場合には, 次のように入力します。
$ COPY CHAOS::DISK2:[PUBLIC]*.* *
使用中のノードにあるファイルをリモート・ノードにコピーする場合には,COPY コマンドを使用します。システム間でファイルをコピーしようとしたときに, 保護違反またはDECnetエラー・メッセージが表示された場合には, メールでファイルをコピーするか,または,アクセス制御文字列を使用して回避することができます。
たとえば,省略時のディレクトリにあるすべてのファイルの最新バージョンを, ノードCHAOS上のディレクトリDISK2:[STAFF_BACKUP]に同じ名前でコピーする場合には, 次のように入力します。
$ COPY *.* CHAOS::DISK2:[STAFF_BACKUP]
ファイルが自分のものである場合は,Mailを使用すれば,そのファイルを他のノード上のユーザ・ アカウントに送信できます。
メールを使用してファイルを送信する場合,次の制約事項に注意してください。
Mailを使用したファイルの送信については,第6 章を参照してください。
たとえば,次のコマンドは,ファイルFEES.DATをノードCHAOSの JONESアカウントに送信します。
$ MAIL/SUBJECT="Fee schedule" FEES.DAT CHAOS::JONES
保護違反を受信した後,ファイルをコピーするには,ファイル指定のノード名の後にアクセス制御文字列を指定できます( 第4.1.10 項を参照)。
次の例では,ユーザはCHAOSノードに,ユーザ名がSMITHで,パスワードがSPG96PRT であるアカウントを持っています。ユーザは,省略時のディレクトリのすべてのファイルを CHAOS のアカウントにコピーします。
$ COPY *.* CHAOS"SMITH SPG96PRT"::DISK2:[STAFF_BACKUP]
RENAMEコマンドは,ファイルに新しい名前を付けます。また,場合によっては, そのファイルを異なるディレクトリに格納します。ファイルの変更後は, ファイルFEES.DAT;4は省略時のディレクトリには存在しなくなることに注意してください。RENAME コマンドを使用するときは,入力位置と出力位置が同じデバイス上になければなりません。
次の例では,ファイルFEES.DATが新しい名前RECORDS.DATに変更され,省略時のディレクトリから[SAVETEXT] ディレクトリに移動されます。
$ RENAME FEES.DAT;4 [SAVETEXT]RECORDS.DAT
これ以降の節では,OpenVMS環境でサポートされるツールやコマンドを使用して, ファイルの内容を表示する方法を説明します。
ファイルの内容を画面に表示する場合には,DCLプロンプトに対してTYPE コマンドとファイル名を入力します。省略時の設定では,ファイルの最新バージョンが表示されるので, ファイル指定にバージョン番号を指定する必要はありません。
次の例では,STAFF_VACATIONS.TXTファイルの最新のバージョンが表示されます。
$ TYPE STAFF_VACATIONS.TXT
画面上でのテキストのスクロールを一時的に中止するには,Hold Screenキー(VT200およびVT300シリーズ・ターミナルのF1)を押します。スクロールを再開する場合には,Hold Screen キーをもう一度押します。表示を中止してDCL コマンド・レベルに戻る場合には,Ctrl/YまたはCtrl/O を押します。
TYPEコマンドに/PAGE修飾子を指定すると,一度に1画面分の情報だけを表示することができます。Return を押せば,次の画面を見ることができます。
リモート・ノードのファイルの内容を表示するには,ファイル指定の中にノード名, ディスク,そしてディレクトリを指定します。
次の例では,COMPANY_HOLIDAYS.TXTファイル(リモート・ノードCHAOSに存在するファイル) が表示されます。
$ TYPE CHAOS::DISK2:[PUBLIC]COMPANY_HOLIDAYS.TXT
アスタリスク(*)・ワイルドカードを使用すると,特定のファイルの全バージョンを表示できます。
たとえば,ディレクトリ[JONES]のファイルLOGIN.COMの全バージョンを表示する場合には, 次のように入力します。
$ TYPE [JONES]LOGIN.COM;*
ディレクトリ[JONES]の中で,STAFFで始まるあらゆるファイル・タイプを持つすべてのファイルの全バージョンを表示する場合には, 次のように入力します。
$ TYPE [JONES]STAFF*.*;*
TYPEコマンド行に2つ以上のファイルを指定すると,指定した順序でファイルが表示されます。 ワイルドカード文字を使用すると,ファイルはアルファベット順に表示されます。
DELETEコマンドは,ファイルをディレクトリから削除し,そのファイルが占有していたディスク領域を解放して他のファイルが使用できるようにします。DELETE コマンド使用するときは,各ファイル指定にバージョン番号を指定するか, バージョン番号としてアスタリスク(*)・ワイルドカード文字を指定しなければなりません。
たとえば,ファイルPOUND.LISのバージョン17を削除する場合には,次のように入力します。
$ DELETE POUND.LIS;17
POUND.LISのバージョン16と17を削除する場合には,次のように入力します。
$ DELETE POUND.LIS;16,;17
ファイルPOUND.LISのすべてのバージョンを削除する場合には,次のように入力します。
$ DELETE POUND.LIS;*
ワイルドカード文字で複数のファイルを削除する場合には,/CONFIRM修飾子を使用して, 削除するたびに確認するとよいでしょう。また,削除する場合には, ファイルの名前を表示するとよいでしょう。この場合は, DELETEコマンドと一緒に/LOG修飾子を指定します。
たとえば,サブディレクトリ[JONES.LICENSES.DOG]のすべてのファイルを削除してよいかどうかを確認する場合には, 次のコマンドを入力します。
$ DELETE/CONFIRM *.*;* DISK1:[JONES.LICENSES.DOG]FEES.DAT;4, delete? [N]: Y DISK1:[JONES.LICENSES.DOG]FEMALE.LIS;6, delete? [N]: Y DISK1:[JONES.LICENSES.DOG]MALE.LIS;3, delete? [N]: N DISK1:[JONES.LICENSES.DOG]POUND.LIS;17, delete? [N]: Y
次の例では,コマンドを入力すると,ファイルを削除した後でそのファイルの名前が表示されます。
$ DELETE/LOG *.LIS;* _%DELETE-I-FILDEL, DISK1:[JONES.LICENSES.DOG]FEMALE.LIS;6 deleted (35 blocks) _%DELETE-I-FILDEL, DISK1:[JONES.LICENSES.DOG]MALE.LIS;3 deleted (5 blocks) _%DELETE-I-FILDEL, DISK1:[JONES.LICENSES.DOG]POUND.LIS;17 deleted (9 blocks)
PURGEコマンドは,省略時のディレクトリまたは指定されたディレクトリに存在する指定されたファイル( または全ファイル)の最新バージョン以外のバージョンをすべて削除します。 ファイルを更新した後でファイルの古いバージョンをパージするようにすると, ディスク上に未使用領域を確保できます。
たとえば,省略時のディレクトリにある各ファイルの2つの最新バージョンを残してすべてのバージョンをパージする場合には, 次のように入力します。
$ PURGE/KEEP=2
これ以降の節では,ファイルを保護する方法を説明します。詳細は,以下を参照してください。
自分以外のユーザがファイルをアクセスできないようにする場合には,保護を設定するか, ファイルのACLを変更します。保護を設定したりファイルのACL を変更する場合には,ファイルを所有しているか,ファイルの制御アクセス権を持っているか,GRPPRV ,SYSPRV,BYPASS,READALL特権を持っていなければなりません。
ファイル保護には,省略時の保護と明示的な保護の2種類があります。ファイルを作成すると, そのファイルには通常,親ディレクトリと同じ保護が割り当てられます。 これが省略時の保護です。CREATE/PROTECTIONコマンドを使用してファイルを作成した場合や,SECURITY/PROTECTION コマンドを使用して既存のファイルの保護を変更する場合には, 明示的なファイル保護を使用します。
ファイルを完全に保護するには,そのファイルが存在するディレクトリにも同等の保護またはそれ以上の保護を適用しなければなりません。
これ以降の節では,ファイルを印刷する手順を説明します。
1つまたは複数のファイルを印刷する場合には,PRINTコマンドを使用します。PRINT コマンドは,印刷キューといわれる印刷するジョブのリストに印刷ジョブ( 印刷するすべてのファイル)を登録します。PRINT コマンドに指定されるファイルの省略時のファイル・タイプは,.LISまたは最後に明示的に指定されたファイル・ タイプになります。システムは, ジョブ名,キュー名,ジョブ番号を表示するとともに,ジョブの状態も示します。
省略時の設定では,ジョブ名は,PRINTコマンドの最初の(または唯一の) ファイル指定の名前になります。ジョブをキューに登録した後は,ジョブ番号を使用してそのジョブを指定します。 ジョブをキューに登録すると, 他のジョブがそれ以前にキューに登録されていなくて,プリンタが物理的に印刷を開始できる状態であれば, ジョブが印刷されます。
次の例では,3つのファイルを含むプリント・ジョブが省略時のプリント・ キューであるSYS$PRINTに登録されます。
$ PRINT POUND,MALE,FEES.DAT Job POUND (queue SYS$PRINT, entry 202) started on SYS$PRINT
PRINTコマンドの省略時のファイル・タイプは.LISであるため, POUND.LIS,MALE.LIS,FEES.DATファイルがキューに登録されます。 ジョブ名はPOUNDであり,キュー名はSYS$PRINTであり,ジョブ番号は202 です。
印刷キューは,一度に1つのジョブしか実行できません。印刷ジョブは, その優先順位に従って印刷順がスケジューリングされ,最も高い優先順位を持つジョブが最初に印刷されます。 同じ優先順位を持つジョブが2 つ以上あるときには,普通は最も小さいジョブが最初に印刷されます。 優先順位が同じでサイズも等しいジョブが2つ以上あるときは, キューへの登録順に印刷されます。優先順位は,システム管理者が決定するか,PRINT コマンドに/PRIORITY修飾子を入力することによって決定できます。 優先順位のスケジューリングについての詳しい説明は, 『OpenVMSシステム管理者マニュアル』を参照してください。
通常,省略時の印刷キューSYS$PRINTは,ユーザのシステムに固有なスタートアップ・ プロシージャの一部として起動されます。次の表は,キューに関する情報を表示するために使用できるコマンドを示しています。
表示対象 | 入力するコマンド |
---|---|
サイトのキュー | SHOW QUEUE |
プリント・ジョブの状態 | SHOW ENTRY |
他のユーザがキューに登録した ジョブ | SHOW ENTRY/USERNAME=username |
特定の1つ以上のジョブに関する情報 |
SHOW ENTRY job-name
SHOW ENTRY entry-number |
次の例では,SHOW ENTRYコマンドを使用して,キューに登録されているプリント・ ジョブに関する情報を表示します。
$ SHOW ENTRY Entry Jobname Username Blocks Status ----- ------- -------- ------ ------ 202 POUND JONES 38 Pending On stopped printer queue SYS$PRINT)
プリント・フォームは次の機能を実行します。
印刷に対する要件が限られている場合には,特殊なフォームを使用する必要はありません。 コンパックはすべてのキューに対して,システム全体で有効な省略時のフォーム(DEFAULT という名前)を提供しています。また, システム管理者もプリント・フォームを作成できます。出力を書式化しなければならない場合や, 特定のプリント・ジョブで特殊な用紙が必要な場合には, システム管理者にご相談ください。
印刷ジョブを停止して,印刷キューからその印刷ジョブを削除する場合には,DELETE/ENTRY コマンドにエントリ番号パラメータを入力します。
たとえば,エントリ202を削除する場合には,次のように入力します。
$ DELETE/ENTRY=202
別のシステム上のファイルを印刷するには,そのファイルをリモート・ノードにコピーして,PRINT コマンドに/REMOTE修飾子を指定します。
次の例では,COMPANY_HOLIDAYS.TXTファイルがローカル・ノードからリモート・ ノードCHAOSにコピーされ,ファイルは印刷のために,CHAOSノードの省略時のシステム・ プリント・キュー(SYS$PRINT)に登録されます。
$ COPY COMPANY_HOLIDAYS.TXT CHAOS"JONES PANDEMONIUM"::DISK2:[JONES]* $ PRINT/REMOTE CHAOS::DISK2:[JONES]COMPANY_HOLIDAYS.TXT
この例では,アクセス制御文字列は,ユーザJONESが,ノードCHAOS上のディレクトリ[JONES] にファイルをコピーする権限を持つことを示しています。 ファイル指定の最後のアスタリスク(*)・ワイルドカードは, ファイルをリモート・ノードにコピーする場合に,ファイル名COMPANY_ HOLIDAYS.TXTを使用するようにシステムに指示します。
プリント・ジョブは,PRINTコマンドに対する修飾子を使用して,さまざまな方法で制御できます。 たとえば,印刷部数を指定したり,印刷ジョブが完了したときに通知を出すようにシステムに要求したりできます。
ここに示した修飾子の他に,システムでDECprint Supervisorソフトウェアを実行している場合には, ランドスケープ印刷や両面印刷など,さまざまな方法で印刷するために/PARAMETER 修飾子を使用できます。システムで使用できるプリント・ オプションの一覧については,システム管理者に質問してください。
次の表はPRINTコマンドの修飾子を示しています。PRINTコマンドについての詳細は, 『OpenVMS DCL Dictionary』またはオンライン・ヘルプを参照してください。
印刷操作 | 印刷ジョブ・コマンドと修飾子 |
---|---|
コピー部数
ファイル別 指定されたファイルのみ | PRINT/JOB_COUNT=n[1] PRINT/COPIES=n[1] ファイル指定/COPIES=n[1] |
ページ数 | PRINT/PAGES=[1] |
印刷機能
用紙タイプ 特殊機能 ダブルスペーシング ページ見出し |
PRINT/FLAG=[1] PRINT/FORM=[1] PRINT/CHARACTERISTICS=[1] PRINT/SPACE[1] PRINT/HEADER[1] |
ジョブ実行の通知 | PRINT/NOTIFY |
ジョブ実行の延期
無期限 | PRINT/AFTER PRINT/HOLD |
延期しているジョブの解放 | SET QUEUE/ENTRY/RELEASE |
印刷ジョブの表示 | SHOW ENTRY |
印刷ジョブの停止
現在印刷しているジョブを停止して, キューの中の次のジョブの印刷を開始する 現在印刷しているジョブを停止して, 再登録して印刷し直す | DELETE/ENTRY=ジョブ番号 STOP/ABORT STOP/REQUEUE |
ジョブ完了後,ジョブをキューに残す | PRINT/RETAIN |
[1] SET QUEUE/ENTRYコマンドに修飾子を使用すると,キューに登録されているが, まだ印刷されていない印刷ジョブにこれらの操作を指定できる。 |
[ 前のページ ]
[ 次のページ ]
[ 目次 ]
[ 索引 ]
[ DOC Home ]