|
HP OpenVMS DCL Dictionary
DEASSIGN
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.
Format
DEASSIGN [logical-name[:]]
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.
Description
The DEASSIGN command 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 use the /ALL qualifier with
DEASSIGN to cancel all logical names in a specified table. If you use
the /ALL qualifier and do not specify a table, then all names in the
process table (except names created by the command interpreter) are
deassigned; that is, all names entered at the indicated access mode or
an outer access mode are deassigned.
To specify the logical name table from which you want to deassign a
logical name, use the /PROCESS, /JOB, /GROUP, /SYSTEM, or /TABLE
qualifier. If you enter more than one of these qualifiers, only the
last one entered is accepted. If entries exist for the specified
logical name in more than one logical name table, the name is deleted
from only the last logical name table specified on the command line. If
you do not specify a logical name table, the default is the
/TABLE=LNM$PROCESS qualifier.
To delete a shareable logical name, you need write (W) access to the
logical name table. To delete a shareable logical name table, you need
write (W) access to the parent table and delete (D) access to the
target logical name table.
To specify the access mode of the logical name you want to deassign,
use the /USER_MODE, /SUPERVISOR_MODE, or /EXECUTIVE_MODE qualifier. If
you enter more than one of these qualifiers, only the last one is
accepted. If you do not specify a mode, the DEASSIGN command deletes a
supervisor-mode name. When you deassign a logical name, any identical
names created with outer access modes in the same logical name table
are also deleted.
You must have SYSNAM (system logical name) privilege to deassign an
executive-mode logical name.
If you specify the /EXECUTIVE_MODE qualifier and you do not have SYSNAM
privilege, then the DEASSIGN command ignores the qualifier and attempts
to deassign a supervisor-mode logical name.
All process-private logical names and logical name tables are deleted
when you log out of the system. User-mode entries within the process
logical name table are deassigned when any image exits. The logical
names in the job table, and the job table itself, are deleted when you
log off the system.
Names in all other shareable logical name tables remain there until
they are explicitly deassigned, regardless of whether they are user-,
supervisor-, or executive-mode names. You must have write (W) access to
a shareable logical name table to delete any name in that table.
If you delete a logical name table, all the logical names in the table
are also deleted. Also, any descendant tables are deleted. To delete a
shareable logical name table, you must have delete (D) access to the
table.
Qualifiers
/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.
/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.
/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.
/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.
/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.
/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.
/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.
/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.
/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.
/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.
/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.
Examples
The DEASSIGN command in this example deassigns the process logical name
MEMO.
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.
|