Cancels a logical name assignment that was made with one of the following commands: ALLOCATE, ASSIGN, DEFINE, or MOUNT. The DEASSIGN command also deletes a logical name table that was created with the CREATE/NAME_TABLE command. You can also specify /QUEUE to deassign a logical queue from a printer or terminal queue and stop the logical queue. Format DEASSIGN [logical-name[:]]
1 – Parameter
logical-name[:] Specifies the logical name to be deassigned. Logical names can have from 1 to 255 characters. If the logical name contains any characters other than alphanumerics, dollar signs ($), or underscores (_), enclose it in quotation marks (" "). The logical-name parameter is required unless you use the /ALL qualifier. If the logical-name parameter ends with a colon (:), the command interpreter ignores the colon. (Note that the ASSIGN and ALLOCATE commands remove a trailing colon, if present, from a logical name before placing the name in a logical name table.) If the logical name contains one or more trailing colons, you must append one additional colon to the DEASSIGN logical-name parameter (for example, type DEASSIGN FILE:: to deassign the logical name FILE:). To delete a logical name table, specify the table name as the logical-name parameter. You must also use the /TABLE qualifier to indicate the logical name directory table where the table name is entered.
2 – Qualifiers
2.1 /ALL
Deletes all logical names in the same or an outer (less privileged) access mode. If no logical name table is specified, the default is the process table, LNM$PROCESS. If you specify the /ALL qualifier, you cannot enter a logical-name parameter.
2.2 /CLUSTER_SYSTEM
You must be signed in to the SYSTEM account or have SYSNAM (system logical name) or SYSPRV (system) privilege to deassign a clusterwide logical name. Deassigns a logical name from the LNM$SYSCLUSTER table.
2.3 /EXECUTIVE_MODE
Requires SYSNAM (system logical name) privilege to deassign executive-mode logical names. Deletes only entries that were created in the specified mode or an outer (less privileged) mode. If you do not have SYSNAM privilege for executive mode, a supervisor-mode operation is assumed.
2.4 /GROUP
Requires GRPNAM (group logical name) or SYSPRV privilege to delete entries from the group logical name table. Indicates that the specified logical name is in the group logical name table. The /GROUP qualifier is synonymous with the /TABLE=LNM$GROUP qualifier.
2.5 /JOB
Indicates that the specified logical name is in the jobwide logical name table. The /JOB qualifier is synonymous with the /TABLE=LNM$JOB qualifier. If you do not explicitly specify a logical name table, the default is the /PROCESS qualifier. You should not deassign jobwide logical name entries that were made by the system at login time, for example, SYS$LOGIN, SYS$LOGIN_DEVICE, and SYS$SCRATCH. However, if you assign new equivalence names for these logical names (that is, create new logical names in outer access modes), you can deassign the names you explicitly created.
2.6 /LOG
/LOG (default) /NOLOG /NOLOG overrides the default /LOG to suppress output of a fatal error that would be returned if the specified logical name were not found. When you specify /NOLOG, $STATUS is set to Success instead of to Fatal and no error message is output.
2.7 /PROCESS
/PROCESS (default) Indicates that the specified logical name is in the process logical name table. The /PROCESS qualifier is synonymous with the /TABLE=LNM$PROCESS qualifier. You cannot deassign logical name table entries that were made by the command interpreter, for example, SYS$INPUT, SYS$OUTPUT, and SYS$ERROR. However, if you assign new equivalence names for these logical names (that is, create new logical names in outer access modes), you can deassign the names you explicitly created.
2.8 /SUPERVISOR_MODE
/SUPERVISOR_MODE (default) Deletes entries in the specified logical name table that were created in supervisor mode. If you specify the /SUPERVISOR_MODE qualifier, the DEASSIGN command also deassigns user-mode entries with the same name.
2.9 /SYSTEM
Indicates that the specified logical name is in the system logical name table. The /SYSTEM qualifier is synonymous with the /TABLE=LNM$SYSTEM qualifier.
2.10 /TABLE
/TABLE=name Specifies the table from which the logical name is to be deleted. Defaults to LNM$PROCESS. The table can be the process, group, job, or system table, one of the directory tables, or the name of a user-created table. (The process, job, group, and system logical name tables should be referred to by the logical names LNM$PROCESS, LNM$JOB, LNM$GROUP, and LNM$SYSTEM, respectively.) The /TABLE qualifier also can be used to delete a logical name table. To delete a process-private table, enter the following command: $ DEASSIGN/TABLE=LNM$PROCESS_DIRECTORY table-name To delete a shareable table, enter the following command: $ DEASSIGN/TABLE=LNM$SYSTEM_DIRECTORY table-name To delete a shareable logical name table, you must have delete (D) access to the table or write (W) access to the directory table in which the name of the shareable table is cataloged. If you do not explicitly specify the /TABLE qualifier, the default is the /TABLE=LNM$PROCESS qualifier.
2.11 /USER_MODE
Deletes entries in the process logical name table that were created in user mode. If you specify the /USER_MODE qualifier, the DEASSIGN command can deassign only user-mode entries. Also, user-mode logical names are automatically deleted when invoking and exiting a command procedure.
3 – Examples
1.$ DEASSIGN MEMO The DEASSIGN command in this example deassigns the process logical name MEMO. 2.$ DEASSIGN/ALL The DEASSIGN command in this example deassigns all process logical names that were created in user and supervisor mode. This command does not, however, delete the names that were placed in the process logical name table in executive mode by the command interpreter (for example, SYS$INPUT, SYS$OUTPUT, SYS$ERROR, SYS$DISK, and SYS$COMMAND). 3.$ DEASSIGN/TABLE=LNM$PROCESS_DIRECTORY TAX The DEASSIGN command in this example deletes the logical name table TAX, and any descendant tables. When you delete a logical name table, you must specify either the /TABLE=LNM$PROCESS_ DIRECTORY or the /TABLE=LNM$SYSTEM_DIRECTORY qualifier, because the names of all tables are contained in these directories. 4.$ ASSIGN USER_DISK: COPY $ SHOW LOGICAL COPY "COPY" = "USER_DISK:" (LNM$PROCESS_TABLE) $ DEASSIGN COPY The ASSIGN command in this example equates the logical name COPY with the device USER_DISK and places the names in the process logical name table. The DEASSIGN command deletes the logical name. 5.$ DEFINE SWITCH: TEMP $ DEASSIGN SWITCH:: The DEFINE command in this example places the logical name SWITCH: in the process logical name table. The trailing colon is retained as part of the logical name. Two colons are required on the DEASSIGN command to delete this logical name because the DEASSIGN command removes one trailing colon, and the other colon is needed to match the characters in the logical name. 6.$ ASSIGN/TABLE=LNM$GROUP DKA1: GROUP_DISK $ DEASSIGN/PROCESS/GROUP GROUP_DISK The ASSIGN command in this example places the logical name GROUP_DISK in the group logical name table. The DEASSIGN command specifies conflicting qualifiers; because the /GROUP qualifier is last, the name is successfully deassigned. 7.$ ASSIGN DALLAS::USER_DISK: DATA . . . $ DEASSIGN DATA The ASSIGN command in this example associates the logical name DATA with the device specification USER_DISK on remote node DALLAS. Subsequent references to the logical name DATA result in references to the disk on the remote node. The DEASSIGN command cancels the logical name assignment.
4 /QUEUE
Deassigns a logical queue from a printer or terminal queue and stops the logical queue. The DEASSIGN/QUEUE command cannot be used with batch queues. Requires manage (M) access to the queue. Format DEASSIGN/QUEUE logical-queue-name[:]
4.1 – Parameter
logical-queue-name[:] Specifies the name of the logical queue that you want to deassign from a specific printer or terminal queue.
4.2 – Example
$ ASSIGN/QUEUE LPA0 ASTER . . . $ DEASSIGN/QUEUE ASTER $ ASSIGN/MERGE LPB0 ASTER The ASSIGN/QUEUE command in this example associates the logical queue ASTER with the print queue LPA0. Later, you deassign the logical queue with the DEASSIGN/QUEUE command. The ASSIGN/MERGE command reassigns the jobs from ASTER to the print queue LPB0.