VMS Help  —  DEFINE  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.
Close Help