前へ | 次へ | 目次 | 索引 |
次の文字は,常に有効なワイルドカード文字です。
パーセント記号(%)は,既存のアプリケーションとの互換性を保つため,引き続き単一文字のワイルドカードとして使用されます。パーセント記号(%)の前にサーカンフレックス(^)を付けるとリテラル文字として使用することができます。また,Windows ファイル名の中では,リテラル文字として使用されます。RMS は,パーセント記号の他に疑問符(?)も単一文字のワイルドカードとして認識します。疑問符は,OpenVMS 7.2 以降では,パーセント記号とまったく同様に,ワイルドカード文字として機能します。パーセント記号と疑問符は共に,検索パターンの中の 1 文字 だけ とマッチします。
エスケープ文字(^. など)またはエスケープ・シーケンス(^EF や ^U0101 など)は,ワイルドカードのマッチングで使用するための単一文字と考えられています。 |
DCL では拡張ファイル名の大文字と小文字の区別が保存されますが,ワイルドカードのマッチングでは,大文字と小文字は区別されません。
ワイルドカードを含む検索処理では,引き続き,対象となるファイルの 同じ部分にある 対応する文字だけとマッチします。 表 5-1 は,ワイルドカードを使用した検索の例を示しています。
パターン... | マッチする例... | マッチしない例... |
---|---|---|
A*B;* | AHAB.;1 | A.B;1 |
A.*.B* | A^.DISK.BLOCK;1 | A^.C^.B.DAT;1 |
A?B.TXT;* | A^.B.TXT;5 | A^.^.B.TXT;1 |
*.DAT | Lots^.of^.Periods.dat;1 | DAT.;1 |
Mil?no.dat | Milano.dat;1 | Millaano.dat;1 |
NAPOLI.?.DAT | napoli.q.dat;1 | napoli.abc77.dat;1 |
ODS-2 および ODS-5 ボリューム構造はどちらも,OpenVMS Alpha 上で深いディレクトリのネスティングをサポートしています。
たとえば,次のような深いネスティング構造を持つディレクトリを作成することができます。
$ CREATE/DIRECTORY [.a.b.c.d.e.f.g.h.i.j.k.l.m] |
ODS-5 ボリューム上では,次のように長いファイル名を持つディレクトリを作成することができます。
$ CREATE/DIRECTORY [.AVeryLongDirectoryNameWhichHasNothingToDoWithAnythingInParticular] |
完全なファイル指定が 255 バイトより長い場合,変更されていないアプリケーションで表示するときには,完全なファイル指定は RMS によって短縮されます。
5.2.1 ディレクトリの命名構文
ODS-5 ボリュームでは,ディレクトリ名は,ISO Latin-1 を 使用した場合のファイル名と同じ規則に準拠します。ピリオドと特殊文字は,ディレクトリ名の中で使用することができますが,リテラル文字として認識されるためには, 表 5-2 に示すように, エスケープ文字としてのサーカンフレックス(^)を前に付けなければなりません。
CREATE/DIRECTORY. . . | 結果 |
---|---|
[Hi^&Bye] | Hi^&Bye.DIR;1 |
[Lots^.Of^.Periods^.In^.This^.Name] | Lots^.Of^.Periods^.In^.This^.Name.DIR;1 |
5.2.2 ディレクトリ ID およびファイル ID の短縮形
状況によっては,完全なファイル指定に,変更されていないアプリケーションで許可されている 255 バイトより多くの文字が含まれている場合があります。そのようなアプリケーションが必要とするファイル指定の長さが 255 バイトを超えている場合,RMS はディレクトリをディレクトリ ID(DID)に短縮し,ファイル名をファイル ID(FID)に短縮することによって,より短いファイル指定を生成します。
ファイル指定が長すぎる場合,RMS はまずディレクトリをそのディレクトリ ID に変換することにより,より短いディレクトリを生成しようとします。この短い指定は,DID と呼ばれます。
TEST$ODS5:[5953,9,0]Alghero.TXT;1 |
UIC 形式のディレクトリ名との混同を避けるため,この形式のディレクトリ名には,3 つの数字と 2 つのコンマがなければならないことに注意してください。DIRECTORY コマンドを使用すると,ファイル指定の短いバージョンのほか,完全なバージョンも表示することができます。
5.3 DCL での拡張ファイル指定解析機能の使用
ファイル名に対する省略時の DCL 解析スタイルは,ODS-2 スタイルのファイル名です。
拡張ファイル名を DCL コマンド行で使用する場合には,拡張ファイル指定を受け付けて表示できるように,解析スタイルを EXTENDED に設定する必要があります。解析スタイルを設定するには,次のコマンドを入力します。
$ SET PROCESS/PARSE_STYLE=EXTENDED |
このコマンドは,OpenVMS VAX システムにはまったく影響を与えないことに注目してください。
このコマンドを入力すると,DCL は,次のようなファイル名を受け付けるようになります。
$ CREATE MY^[FILE |
詳細は,『OpenVMS DCL ディクショナリ: N--Z』の SET PROCESS/PARSE_STYLE コマンドに関する説明を参照してください。
DCL を省略時の解析スタイルに再設定するには,次のコマンドを入力します。
$ SET PROCESS/PARSE_STYLE=TRADITIONAL |
このコマンドを入力すると,DCL は,ODS-2 のファイル名形式だけを受け付けるようになります。
5.4 拡張ファイル指定を使用できる状況
一部の DCL コマンドと OpenVMS ユーティリティは,拡張ファイル指定を完全にサポートしています。これらのコマンドおよびユーティリティは,拡張ファイル名のすべての特徴を活用できるように変更されており,拡張ファイル指定をエラーなしに,また,大文字と小文字の区別を変更せずに受け付け,処理することができます。さらに,ディレクトリ ID(DID)またはファイル ID(FID)形式に短縮せずに,従来課せられていた 255 バイトの制限を超える長いファイル指定を受け付け,また生成することができます。1
省略時サポート・レベルの DCL コマンドおよび OpenVMS ユーティリティには,拡張ファイル名を活用するための変更がほとんど,またはまったく加えられていません。これらのユーティリティおよびコマンドは,拡張ファイル指定のほとんどの属性(新しい文字や深いディレクトリ構造など)を正しく処理します。ただし,ファイル名を作成したり表示するときに,大文字と小文字の区別に誤りが生じる可能性があります。
完全サポート・レベルのユーティリティとは異なり,省略時サポート・レベルのユーティリティは,長いファイル指定を扱うために RMS が提供する DID および FID の短縮機能に依存しています。このため,これらのユーティリティには,DID および FID の短縮に関連した次の制限事項があります。
$ DIRECTORY a[1,2,3]*.txt $ COPY a[1,2,3].txt *.txt2 |
FID の短縮形は 1 つのファイルの一意の数値表現であるため,これを使って他のファイルを表現したり,マッチングを実行することはできません。
DID および FID の短縮形についての詳細は,『Guide to OpenVMS File Applications』を参照してください。
特定のコマンドまたはユーティリティについての詳細は,OpenVMS ドキュメント・セットの中の該当するマニュアルを参照してください。
拡張ファイル名をサポートしていない OpenVMS ユーティリティおよびコマンドは,ODS-5 ボリューム上で機能することができるものの,処理できる対象が従来のファイル指定に限られます。これらのユーティリティおよびコマンドは,拡張ファイル指定を処理するときに正しく動作することが保証されていないため,ODS-5 ボリューム上では慎重に使用する必要があります。
ODS-5 ボリューム構造をサポートしていない OpenVMS ユーティリティおよびコマンドは,拡張ファイル名を処理することができません。これらのユーティリティおよびコマンドは,従来のファイル指定を処理するときでも正しく動作することが保証されていないため,ODS-5 ボリューム上では慎重に使用する必要があります。
表 5-3 には,拡張ファイル名または ODS-5 構造の処理に制限があるため,Extended File Specifications をサポートしていない OpenVMS ユーティリティおよびコマンドが示されています。
コンポーネント | 注意事項 |
---|---|
ODS-5 非サポート | |
ディスク・デフラグメンタ | 特定のデフラグメンテーション・ツールが ODS-5 ボリュームをサポートするように更新されたという記述がある場合を除き,サポートされない。 1 |
拡張ファイル名非サポート | |
コード・コンパイラ | 拡張ファイル名をオブジェクト・ファイル名として使用することはできない。ただし,コード・コンパイラが, 拡張ファイル名をサポートするアプリケーションを作成することはできる。 |
INSTALL 既知イメージ | 拡張ファイル名を持つイメージを,既知イメージとしてインストールしてはならない。 |
LINK | 拡張ファイル名を持つイメージを出力することはできない。 |
MONITOR | 拡張ファイル名を信頼の置ける形で処理することができない。 |
ネットワーク・ファイル(NET*.DAT) | 拡張ファイル名を使った名前に変更してはならない。 |
オブジェクト・モジュール(.OBJ) | 拡張ファイル名を使った名前に変更してはならない。 |
ページ・ファイルと スワップ・ファイル | 拡張ファイル名を使用してはならない。 |
SYSGEN | 拡張ファイル名を使ってパラメータ・ファイルを作成してはならない。 |
システム・スタートアップ・ファイル | 拡張ファイル名を使った名前に変更してはならない。 |
1 DCL コマンド行に長いファイル指定を入力する場合でも,コマンド行の長さは 255 バイトに制限されます。 |
一部の DCL コマンドでは,次のように新しい修飾子を使用して拡張ファイル名の表示を制御することができます。
/STYLE= [CONDENSED | EXPANDED] |
この修飾子を使用すると,更新された DCL コマンドが拡張ファイル名およびそれらに関連するプロンプトを表示する方法を制御することができます。
キーワード CONDENSED を使用すると,多くのユーティリティで 255 バイトと定められている文字列の上限以内に収まるように生成されたファイル指定が表示されます。必要に応じて,このファイル指定には,DID 短縮形または FID 短縮形が含まれている場合があります。キーワード EXPANDED を使用すると,ディスク上に格納されているファイル指定が完全な形で表示され,DID 短縮形や FID 短縮形は含まれません。
この後の項では,DIRECTORY,TYPE,PURGE,および DELETE コマンドに /STYLE 修飾子を使用した例が示されています。
5.5.1 DIRECTORY コマンド
DIRECTORY コマンドを使用すると,ディレクトリの内容を表示するときに,ファイル名を表示する形式を選択することができます。
DIRECTORY/STYLE=(keyword[,keyword]) |
DIRECTORY コマンドを使用すると,省略時の設定では,次の例のように,必要に応じて DID を使用し,DID が不要な場合には完全なディレクトリ指定に切り替わって,ファイル名が表示されます。
$ DIRECTORY Directory TEST$ODS5:[23,1,0] abcdefghijklmnopqrstuvwxyABCDEFGHIJKLMNOPQRSTUVWXYabcdefghijklmnopqrs tuvwxyABCDEFGHIJKLMNOPQRSTUVWXYabcdefghijklmnopqrstuvwxyABCDEFGHIJKLM NOPQRSTUVWXY.abcdefghijklmnopqrstuvwxyABCDEFGHIJKLMNOPQRSTUVWXYabcdef ghijklmnopqrst;2 Total of 1 file. Directory TEST$ODS5:[TEST.RANDOMTESTING.RANDOM] AddressFiles.DIR;1 LOGIN.COM;3 test.1;1 test^.1.clue;1 Travel.LIS;1 whee.;5 work.dat;8 Total of 8 files. Grand total of 2 directories, 9 files. |
DIRECTORY コマンドで /STYLE 修飾子を使用し,両方のキーワードを指定すると,2 列から成るディレクトリ・リストが表示されます。それぞれの列には,すべてのファイル名が含まれています。CONDENSED の列には,必要に応じて DID および FID が含まれ,EXPANDED の列には,完全なディレクトリ名および完全なファイル名が含まれています。ファイル・エラーがあると,CONDENSED 列に表示されます。次の例は,DIRECTORY コマンドで /STYLE 修飾子を使用し,両方のキーワードを指定した結果を示しています。
$ DIRECTORY/STYLE=(CONDENSED,EXPANDED) Directory TEST$ODS5:[23,1,0] TEST$ODS5:[TEST.RANDOMTESTING.RANDO M] abcdefghijklmnopqrstuvwxyABCDEFGHIJ abcdefghijklmnopqrstuvwxyABCDEFGHIJ KLMNOPQRSTUVWXYabcdefghijklmnopqrst KLMNOPQRSTUVWXYabcdefghijklmnopqrst uvwxyABCDEFGHIJKLMNOPQRSTUVWXYabcde uvwxyABCDEFGHIJKLMNOPQRSTUVWXYabcde fghijklmnopqrstuvwxyABCDEFGHIJKLMNO fghijklmnopqrstuvwxyABCDEFGHIJKLMNO PQRSTUVWXY.abcdefghijklmnopqrstuvwx PQRSTUVWXY.abcdefghijklmnopqrstuvwx yABCDEFGHIJKLMNOPQRSTUVWXYabcdefghi yABCDEFGHIJKLMNOPQRSTUVWXYabcdefghi jklmnopqrst;2 jklmnopqrst;2 AddressFiles.DIR;1 AddressFiles.DIR;1 LOGIN.COM;3 LOGIN.COM;3 test.1;1 test.1;1 test^.1.clue;1 test^.1.clue;1 Travel.LIS;1 Travel.LIS;1 whee.;5 whee.;5 work.dat;8 work.dat;8 Total of 8 files. |
DIRECTORY コマンドでは,/STYLE 修飾子に一方または両方のキーワードを使用することができます。
5.5.2 TYPE コマンド
TYPE コマンドは,/STYLE 修飾子を受け付けます。この修飾子を使用すると,ファイルやプロンプトを入力するときにシステム・メッセージに表示されるファイル名形式を選択することができます。
$ TYPE/STYLE=(keyword) |
次の例では,TYPE コマンドに修飾子 TYPE=EXPANDED および CONFIRM を使用しています。
$ TYPE/CONFIRM/STYLE=EXPANDED abc*.*rst;2 TYPE TEST$ODS5:[TEST.RANDOMTESTING.RANDOM]abcdefghijklmnopqrstuvwxyzABCDEF GHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYabc defghijklmnopqrstuvwxyzGHIJKLMNOPQRSTUVWXYabcdefghijklmnopqrst;2 ? [N]: Y [System outputs contents of file] |
DELETE コマンドは /STYLE 修飾子を受け付けます。この修飾子を使用すると,コマンドを実行するときに表示されるファイル名形式を選択することができます。
$DELETE/STYLE=(keyword) |
次の例の反復記号(...)は,ファイル名の中に多くの文字が含まれていることを示します。これらの例では,CONFIRM 修飾子を使用して,システム・メッセージを生成しています。
省略時の値(CONDENSED)を使用した DELETE:
$ DELETE/CONFIRM abc*.*.* DELETE TEST$ODS5:[TEST.RANDOMTESTING.RANDOM]abcAlphabet.stuff;1 ? [N]: Y DELETE TEST$ODS5:[23,1,0] abcdefg. . .QRSTUVWXY.abcdefg. . .tuvw xy;1 ? [N]: Y |
完全なファイル指定が必要な場合には,DELETE コマンドで /STYLE 修飾子と EXPANDED キーワードを使用します。
$ DELETE/CONFIRM/STYLE=EXPANDED abc*.*.* DELETE TEST$ODS5:[TEST.RANDOMTESTING.RANDOM]abcAlphabet.stuff;1 ? [N]: Y DELETE TEST$ODS5:[TEST.RANDOMTESTING.RANDOM]abcdefg. . .QRSTUVWX Y.abcdefg. . .tuvwxy;1 ? [N]: Y |
前へ | 次へ | 目次 | 索引 |