はじめよう!日本語 OpenVMS
はじめよう!日本語 OpenVMS
第 9 章 ディレクトリを作成する
この章では
ディレクトリとは,ファイルの登録簿です。日本語 OpenVMS のもとで,ディスク上に作成されるファイルは,必ずディレクトリに登録されます。
ここでは,ディレクトリの階層構造や,ディレクトリの作成方法等について説明します。
関連資料
- 『OpenVMS DCL ディレクトリ』
- 『OpenVMS システム管理者マニュアル』
- 『OpenVMS ユーザーズ・マニュアル』
- 『日本語 OpenVMS 概説書』
日本語 OpenVMS のもとで,ディスク上に作成されるファイルは,必ずディレクトリに登録されます。つまり,ディレクトリはファイルの登録簿です。ディレクトリの内容は,登録されているファイルのファイル名,ファイル・タイプ,バージョン番号,ファイルの位置に関する情報です。
ディレクトリ自身も,ディスク上の情報であり 1 つのファイルです (ディレクトリ自身のことをディレクトリ・ファイルということもあります)。ファイル名 = ディレクトリ名で,ファイル・タイプは .DIR,バージョン番号は 1 です。
ディレクトリは,ツリー状の階層構造になっています。そのためディレクトリの名前を指定する場合には,階層構造のどこにあるかを明示する必要があります。ディレクトリには,次の 3 種類があります。
◆ルート・ディレクトリ
すべてのユーザファイル・ディレクトリを登録してあるディレクトリ。ルート・ディレクトリは 1 個のディスクに必ず 1 個だけ存在します。ルート・ディレクトリのファイル名は 000000,ファイル・タイプは .DIR です。
◆ユーザファイル・ディレクトリ
ユーザの持つディレクトリ。ユーザファイル・ディレクトリはディレクトリ名を [ ] で囲んで指定します。
ユーザファイル・ディレクトリを指定する際にルート・ディレクトリの指定は省略できます。たとえば DKA0:[000000.YAMADA] と指定すると,ディスク DKA0 の中にある [YAMADA] というユーザファイル・ディレクトリを指定することになります。
◆サブファイル・ディレクトリ (サブ・ディレクトリとも呼ぶ)
ユーザファイル・ディレクトリの下に作るディレクトリ。ディレクトリ名をピリオドで区切って指定します。
サブファイル・ディレクトリは,ユーザファイル・ディレクトリを含めて 255 階層まで作成することができます。(日本語 OpenVMS のバージョン 7.2 より前のバージョンでは 8 階層まで。)
ディレクトリ・ファイルやファイルの関係を
図 9-1 に示します。
図 9-1 ディレクトリ階層構造
ディレクトリ名は,次の規則に従って付けます。
- 使用できる文字
- 大文字または小文字の英字(A〜Z,a〜z),数字(0〜9),アンダスコア(_),ハイフン(-),ドル記号($)
ただし,ハイフン(-)は,最初の文字としては使用できない。
- 日本語 (日本語ファイル名を使用できる場合のみ)
- 長さ
- 英数字のみの場合は,1 〜 39 文字
- 日本語ファイル名が使用できる場合は,.DIR を含めて 118 文字
ルート・ディレクトリとユーザファイル・ディレクトリは通常,システム管理者が作成します。ユーザがサブファイル・ディレクトリを作成するには,次のようにします。
$ CREATE/DIRECTORY [ディレクトリ名]
|
ディレクトリ名は次のように指定します。
[ユーザファイル・ディレクトリ名.サブファイル・ディレクトリ名]
|
ディレクトリを指定する場合には,ディレクトリの名前を,[ ] で囲む点に注意してください。また,複数のディレクトリ名の指定をすることもできます。複数のディレクトリを指定する場合は,ディレクトリの名前をコンマで区切ります。
現在のディレクトリを調べます。
$ SHOW DEFAULT
DKA0:[YAMADA]
|
ユーザファイル・ディレクトリ [YAMADA] の下に新しくサブファイル・ディレクトリ [YAMADA.SUB] を作成します。 (現在のディレクトリの下のサブディレクトリを作成する場合は,現在のディレクトリ名の代わりにピリオドを指定できます。
$ CREATE/DIRECTORY [.SUB])
$ CREATE/DIRECTORY [YAMADA.SUB]
|
ユーザファイル・ディレクトリ [YAMADA] の下にディレクトリ・ファイル SUB.DIR が作成されたことを確かめます。
$ DIRECTORY
Directory DKA0:[YAMADA]
LETTER.DIR;1 PROJECT.DIR;1 SUB.DIR;1 T_MEIBO.LIS;1
UG.TXT
Total of 5 files.
|
新しく作成されたサブファイル・ディレクトリ [YAMADA.SUB] にデフォルト・ディレクトリを変更します。 ($ SET DEFAULT [.SUB] でもよい。)
$ SET DEFAULT [YAMADA.SUB]
|
サブファイル・ディレクトリ [YAMADA.SUB] の中を確認すると,まだ何もファイルはありません。
$ DIRECTORY
%DIRECT-W-NOFILES, no files found
$
|
現在のディレクトリがわからない場合は,SHOW DEFAULT コマンドで調べることができます。また,現在のディレクトリを変更した場合に, SHOW DEFAULT コマンドで確認することができます。
$ SHOW DEFAULT
DKA0:[YAMADA.GIJIROKU]
|
SET DEFAULT コマンドを使用すると,ユーザが管理するディレクトリであれば,自由に現在のディレクトリを変更することができます。ファイルを探す場合だけでなく,ファイルを置くディレクトリを変更したい場合にも,SET DEFAULT コマンドを使用して,現在のディレクトリを変更します。
| 注意
SET DEFAULT コマンドを使用する際に存在しないディレクトリを指定しても,日本語 OpenVMS はエラー・メッセージを表示しません。したがって,SET DEFAULT コマンドを実行したら,現在のディレクトリが正しく変更できたかどうかを SHOW DEFAULT コマンドで確認してください。
|
ディレクトリ指定を簡単にするために,
表 9-1 にある特殊なシンボルを使うことができます。
表 9-1 ディレクトリの指定で使用するシンボル
-(ハイフン)
|
ディレクトリ階層構造の中の 1 レベル " 上 " を指定
(ディレクトリ指定の最初に書ける)
|
.(ピリオド)
|
ディレクトリ階層構造の中の区切りを表す
(この後にサブファイル・ディレクトリ名または特殊シンボルである * や % を指定する)
|
...(ピリオド 3 つ)
|
現在のディレクトリおよびその下にあるすべてのレベルのサブファイル・ディレクトリを指定
|
*(アスタリスク)
|
ディレクトリ名を構成する 0 から 39 文字までと一致
|
%(パーセント)
|
ディレクトリ名の 1 文字と 1 対 1 に対応
|
?(感嘆符)
|
日本語ファイル名の使用が有効な時のみに使用できる。ディレクトリ名の 1 文字と 1 対 1 に対応
|
サブファイル・ディレクトリを指定する場合は,次の 2 つの方法があります。
- ユーザファイル・ディレクトリ名から指定する方法
- 先頭に . または - を指定する方法
先頭に . または - を使用して指定すると,その前に現在のデフォルト・ディレクトリを追加して指定したのと同じ意味になります。また,単に,[] とだけ指定した場合は,現在のデフォルト・ディレクトリ指定そのものを表します。
SET DEFAULT コマンドを実行したときの実行例を示します。これらの例は,下記の図のディレクトリ構造で実行した場合の実行結果です。図の中で, [ ] で囲まれている名前が,ディレクトリの名前です。また,現在のディレクトリは,[YAMADA.GIJIROKU] です。
ディレクトリを指定した場合
$ SHOW DEFAULT
DKA0:[YAMADA.GIJIROKU]
$ SET DEFAULT [YAMADA.REPORT.GROUP]
$ SHOW DEFAULT
DKA0:[YAMADA.REPORT.GROUP]
|
1つ上のレベルのディレクトリを指定した場合
$ SHOW DEFAULT
DKA0:[YAMADA.GIJIROKU]
$ SET DEFAULT [-]
$ SHOW DEFAULT
DKA0:[YAMADA]
|
1つ上のディレクトリを基準にしてディレクトリを指定した場合
$ SHOW DEFAULT
DKA0:[YAMADA.GIJIROKU]
$ SET DEFAULT [-.REPORT.WEEK]
$ SHOW DEFAULT
DKA0:[YAMADA.REPORT.WEEK]
|
現在のディレクトリの下にあるディレクトリを指定した場合
$ SHOW DEFAULT
DKA0:[YAMADA.GIJIROKU]
$ SET DEFAULT [.KOJIN]
$ SHOW DEFAULT
DKA0:[YAMADA.GIJIROKU.KOJIN]
|
ファイルの一覧を表示したり,現在のディレクトリにどのようなファイルがあるか,また,ファイルの名前を知りたい場合に, DIRECTORY コマンドを使用します。また,ファイルの名前だけでなく個々のファイルの大きさやファイルの個数などの情報を知ることもできます。
複数のファイルを指定することもできます。複数のファイルを指定する場合は,ファイルの名前をコンマで区切ります。ファイルの名前にワイルドカード文字も使用でき,またファイルの名前を省略することもできます。省略した場合,現在のディレクトリのすべてのファイルが表示されます。
DIRECTORY コマンドを実行すると,次の実行例のようにファイルの一覧が表示されます。
1 つのファイルを指定した場合
$ DIRECTORY GROUP_AUG.TXT
Directory DKA0:[YAMADA.GIJIROKU]
GROUP_AUG.TXT;1
Total of 1 file.
|
複数のファイルを指定した場合
$ DIRECTORY GROUP_AUG.TXT,GROUP_SEP.TXT
Directory DKA0:[YAMADA.GIJIROKU]
GROUP_AUG.TXT;1 GROUP_SEP.TXT;5 GROUP_SEP.TXT;4
GROUP_SEP.TXT;3 GROUP_SEP.TXT;2 GROUP_SEP.TXT;1
Total of 6 files.
|
ファイルの名前にワイルドカード文字(*)を指定した場合
$ DIRECTORY GROUP_S*.TXT
Directory DKA0:[YAMADA.GIJIROKU]
GROUP_SEP.TXT;5 GROUP_SEP.TXT;4 GROUP_SEP.TXT;3
GROUP_SEP.TXT;2 GROUP_SEP.TXT;1
Total of 8 files.
|
ファイルを省略した場合
$ DIRECTORY
Directory DKA0:[YAMADA.GIJIROKU]
GROUP_AUG.TXT;1 GROUP_OCT.TXT;2 GROUP_OCT.TXT;1
GROUP_SEP.TXT;5 GROUP_SEP.TXT;4 GROUP_SEP.TXT;3
GROUP_SEP.TXT;2 GROUP_SEP.TXT;1
Total of 8 files.
|
DIRECTORY コマンドにディレクトリを指定すると,指定したディレクトリのファイルの一覧を表示することができます。現在のディレクトリを変更しないで,他のディレクトリに探したいファイルがあるかどうかを調べることができます。
$ DIRECTORY [ディレクトリ名]ファイル名
|
複数のディレクトリを指定することもできます。複数のディレクトリを指定する場合は,ディレクトリの名前をコンマで区切ります。ディレクトリの名前にワイルドカード文字も使用できます。
DIRECTORY コマンドを実行したときの実行例を示します。これらの例は,下記の図のディレクトリ構造で実行した場合の実行結果です。図中,ディレクトリを
[ ] で囲んで示しています。それ以外は通常のファイルです。
1 つのディレクトリを指定した場合
$ SHOW DEFAULT
DKA0:[YAMADA.REPORT.KOJIN]
|
$ DIRECTORY [YAMADA.REPORT]
Directory DKA0:[YAMADA.REPORT]
GROUP.DIR;1 KOJIN.DIR;1
Total of 2 files.
|
複数のディレクトリを指定した場合
$ SHOW DEFAULT
DKA0:[YAMADA.REPORT]
|
$ DIRECTORY [YAMADA.REPORT.KOJIN],[YAMADA.REPORT.GROUP]
Directory DKA0:[YAMADA.REPORT.KOJIN]
KEIHI.TXT;1 SAGYO.TXT;1 TRIP.TXT;1
Total of 3 files.
Directory DKA0:[YAMADA.REPORT.GROUP]
GROUP_KEIHI.TXT;1 MONTH_SAGYO_04.TXT;1
MONTH_SAGYO_05.TXT;1 MONTH_SAGYO_06.TXT;1
MONTH_SAGYO_07.TXT;1 MONTH_SAGYO_08.TXT;1
MONTH_SAGYO_09.TXT;1 MONTH_SAGYO_10.TXT;1
MONTH_SAGYO_11.TXT;1 MONTH_SAGYO_12.TXT;1
Total of 10 files.
Grand total of 2 directories, 13 files.
|
1 つ上のレベルのディレクトリを指定した場合
$ SHOW DEFAULT
DKA0:[YAMADA.REPORT.KOJIN]
|
$ DIRECTORY [-]
Directory DKA0:[YAMADA.REPORT]
GROUP.DIR;1 KOJIN.DIR;1
Total of 2 files.
|
現在のディレクトリの下にあるディレクトリを指定した場合
$ SHOW DEFAULT
DKA0:[YAMADA.REPORT]
|
$ DIRECTORY [.KOJIN]
Directory DKA0:[YAMADA.REPORT.KOJIN]
KEIHI.TXT;1 SAGYO.TXT;1 TRIP.TXT;1
Total of 3 files.
|
現在のディレクトリの下にあるディレクトリをすべて指定した場合
$ SHOW DEFAULT
DKA0:[YAMADA.REPORT]
|
$ DIRECTORY [...]
Directory DKA0:[YAMADA.REPORT]
GROUP.DIR;1 KOJIN.DIR;1
Total of 2 files.
Directory DKA0:[YAMADA.REPORT.GROUP]
GROUP_KEIHI.TXT;1 MONTH_SAGYO_04.TXT;1
MONTH_SAGYO_05.TXT;1 MONTH_SAGYO_06.TXT;1
MONTH_SAGYO_07.TXT;1 MONTH_SAGYO_08.TXT;1
MONTH_SAGYO_09.TXT;1 MONTH_SAGYO_10.TXT;1
MONTH_SAGYO_11.TXT;1 MONTH_SAGYO_12.TXT;1
Total of 10 files.
Directory DKA0:[YAMADA.REPORT.KOJIN]
KEIHI.TXT;1 SAGYO.TXT;1 TRIP.TXT;1
Total of 3 files.
Grand total of 3 directories, 15 files.
|
ディレクトリにワイルドカード文字(*)を指定した場合
$ DIRECTORY [YAMADA.REPORT.*]
Directory DKA0:[YAMADA.REPORT.GROUP]
GROUP_KEIHI.TXT;1 MONTH_SAGYO_04.TXT;1
MONTH_SAGYO_05.TXT;1 MONTH_SAGYO_06.TXT;1
MONTH_SAGYO_07.TXT;1 MONTH_SAGYO_08.TXT;1
MONTH_SAGYO_09.TXT;1 MONTH_SAGYO_10.TXT;1
MONTH_SAGYO_11.TXT;1 MONTH_SAGYO_12.TXT;1
Total of 10 files.
Directory DKA0:[YAMADA.REPORT.KOJIN]
KEIHI.TXT;1 SAGYO.TXT;1 TRIP.TXT;1
Total of 3 files.
Grand total of 2 directories, 13 files.
|
|