|
VMS Help DEFINE, Examples *Conan The Librarian |
1.$ DEFINE/USER_MODE TM1 $DISK1:[ACCOUNTS.MEMOS]WATER.TXT
In this example, the DEFINE command defines TM1 as equivalent
to a file specification. After the next image runs, the logical
name TM1 is automatically deassigned.
2.$ DEFINE CHARLIE XXX1:[CHARLES]
$ PRINT CHARLIE:TEST.DAT
Job 274 entered on queue SYS$PRINT
In this example, the DEFINE command associates the logical name
CHARLIE with the directory name [CHARLES] on the disk XXX1. The
PRINT command queues a copy of the file XXX1:[CHARLES]TEST.DAT
to the system printer.
3.$ DEFINE PROCESS_NAME LIBRA
$ RUN WAKE
In this example, the DEFINE command places the logical name
PROCESS_NAME in the process logical name table with an
equivalence name of LIBRA. The logical name is created in
supervisor mode. The program WAKE translates the logical name
PROCESS_NAME to perform some special action on the process
named LIBRA.
4.$ DEFINE TEMP: XXX1:
.
.
.
$ DEASSIGN TEMP::
In this example, the DEFINE command creates an equivalence
name for the logical name TEMP: and places the name in the
process logical name table. The colon is retained as part of
the logical name. The DEASSIGN command deletes the logical
name. Note that two colons are required on the logical name
in the DEASSIGN command. One colon is deleted by the DEASSIGN
command. The other colon is kept as part of the logical name.
5.$ DEFINE PORTLAND PRTLND::YYY0:[DECNET.DEMO.COM]
In this example, the DEFINE command places the logical name
PORTLAND in the process logical name table with an equivalence
name of PRTLND::YYY0:[DECNET.DEMO.COM]. Subsequent references
to the logical name PORTLAND result in the correspondence
between the logical name PORTLAND and the node, disk, and
subdirectory specified.
6.$ DEFINE LOCAL "BOSTON""JAY_SABLE JKS""::"
In this example, the DEFINE command places the logical name
LOCAL in the process logical name table with a remote node
equivalence name of BOSTON"JAY_SABLE JKS"::. To satisfy
conventions for local DCL command string processing, you
must use three sets of quotation marks. The quotation marks
ensure that access control information is enclosed in one set
of quotation marks in the equivalence name.
7.$ DEFINE MYDISK XXX0:[MYDIR], YYY0:[TESTDIR]
In this example, the DEFINE command places the logical name
MYDISK in the process logical name table with two equivalence
names: XXX0:[MYDIR] and YYY0:[TESTDIR].
8.$ DEFINE/TABLE=LNM$CLUSTER_TABLE FIRENZE FIRENZE::FIESOLE:[ETRUSCAN]
In this example, the DEFINE command equates FIRENZE to the
directory specification FIRENZE::FIESOLE:[ETRUSCAN] and places
both the new logical name (FIRENZE) and its equivalence string
(FIRENZE::FIESOLE:[ETRUSCAN]) in the default clusterwide table.
The new logical name is automatically propagated to all nodes
in the cluster.
9.$ CREATE/NAME_TABLE TABLE1
$ DEFINE/TABLE=LNM$PROCESS_DIRECTORY LNM$FILE_DEV -
_$ TABLE1,LNM$PROCESS,LNM$JOB,LNM$GROUP,LNM$SYSTEM
$ DEFINE/TABLE=TABLE1 -
_$ /TRANSLATION_ATTRIBUTES=CONCEALED WORK_DISK DKA1:
In this example, the CREATE/NAME_TABLE command creates the
process private logical name table TABLE1.
The first DEFINE command ensures that TABLE1 is searched
first in any logical name translation of a device or file
specification (because TABLE1 is the first item in the
equivalence string for the logical name LNM$FILE_DEV, which
determines the default search sequence of logical name tables
whenever a device or file specification is translated).
The second DEFINE command assigns the logical name WORK_DISK
to the physical device DKA1 and places the name in TABLE1.
The logical name has the concealed attribute. Therefore, the
logical name WORK_DISK is displayed in system messages.
10$ CREATE/NAME_TABLE SPECIAL
$ DEFINE/TABLE=LNM$PROCESS_DIRECTORY LNM$FILE_DEV -
_$ SPECIAL,LNM$PROCESS,LNM$JOB,LNM$GROUP,LNM$SYSTEM
$ DEFINE/TABLE=LNM$PROCESS_DIRECTORY TAB SPECIAL
$ DEFINE/TABLE=TAB REPORT [CHELSEA]STORES
$ SHOW LOGICAL/TABLE=SPECIAL REPORT
"REPORT" = "[CHELSEA]STORES" (SPECIAL)
In this example, the CREATE/NAME_TABLE command is used to
create a new logical name table called SPECIAL. This table
is defined in the process directory, LNM$PROCESS_DIRECTORY.
The first DEFINE command ensures that SPECIAL is searched
first in any logical name translation of a device or file
specification (because SPECIAL is the first item in the
equivalence string for the logical name LNM$FILE_DEV, which
determines the default search sequence of logical name tables
whenever a device or file specification is translated). The
logical name LNM$FILE_DEV is placed in the process directory,
LNM$PROCESS_DIRECTORY.
With the next DEFINE command, a new logical name, TAB, is
defined. TAB translates to the string SPECIAL, which identifies
a logical name table. You must define TAB in the process
directory because it translates iteratively to a logical name
table.
Next, the logical name REPORT is placed into the logical name
table TAB. Because TAB translates to the table SPECIAL, the
name REPORT is entered into SPECIAL table. The SHOW LOGICAL
command verifies that the name REPORT has been entered into the
table SPECIAL.
Note that you can redefine TAB so it translates to a different
table. Therefore, if you run different programs that use the
name TAB as a table name, you can change the actual tables
where the names are entered or referenced.
|
|