Copyright Digital Equipment Corp. All rights reserved.

Examples

   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.