dcecp(1m)dcecp(1m)NAMEdcecp - Administrative interface for DCE management tasks
SYNOPSISdcecp [-s] [-local] [script_name | -c command ]
OPTIONS
A list containing one or more valid dcecp commands. For a description
of the dcecp command format, see Administration Objects. Turns off
inheritance of the login context. The default is to inherit the cur‐
rent login context of the principal that invokes dcecp. The -local
option specifies that the dcecp session should operate on the local
dced object while the dced process is in a partial-service state.
ARGUMENTS
Filename of a user-defined script containing dcecp commands.
DESCRIPTION
The DCE control program, dcecp, is the primary DCE administration
interface, providing local and remote access to routine DCE administra‐
tive functions from any DCE Version 1.1 and later platform.
The DCE control program is built on a portable command language called
the tool command language (Tcl). Tcl allows the use of variables, if
statements, list processing functions, loop functions and many other
features commonly found in command languages. dcecp extends these fea‐
tures, providing a set of commands for manipulating specific DCE
objects. The control program also includes task scripts to help admin‐
istrators perform some routine DCE management functions. Refer to the
OSF DCE Administration Guide Core Volume for information about the
basic concepts and features of dcecp. All of Tcl (version 7.3) is
included in the dcecp language.
Invoking and Terminating dcecp
The DCE control program allows you to invoke dcecp commands in the fol‐
lowing modes: Interactive mode Command-line mode Activate interactive
mode by entering the dcecp command without any arguments and without
the -c option. At the dcecp prompt, enter a dcecp or Tcl command;
dcecp executes the command, displays the result, and is ready to accept
another command. % dcecp dcecp> directory list /.: -directories
/.:/hosts /.:/subsys dcecp>
Activate command-line mode from the system prompt by using one of the
following methods: Enter the dcecp command with a filename of a script
containing dcecp commands, other valid Tcl commands, or both, as fol‐
lows:
% dcecp myown.tcl Enter the dcecp command with the -c option followed
by a list containing one or more dcecp commands, as follows: % dcecp-c
directory create /.:/admin/printers
Enter multiple dcecp commands by separating them with a ; (semicolon)
and enclosing the commands in "" (quotation marks). Remember to escape
shell metacharacters (by enclosing them in quotation marks or by using
the backslash character). Multiple commands must be on a single line,
as follows: % dcecp-c "directory create /.:/adm/printers; directory
show /.:/adm/printers" When you use the -c option, operation results
return to the interpreter, not to the shell. If you enter multiple
operations, the output of only the last operation is returned to the
shell. This problem can be overcome by using the following ugly, but
serviceable, workaround: % dcecp-c "puts [dir help]; puts [principal
help]"
Terminate an interactive dcecp session by using either the exit or the
quit command. Use the following command syntax: exit n
quit n Use the n argument to specify the exit value returned to the
shell. The following example terminates a session and returns an exit
value of 56 to the shell: exit 56 By default, dcecp returns 0 (zero) on
success and 1 (one) if a command fails.
Startup Scripts
When you invoke dcecp, the following script files are executed in the
order shown: Contains the standard Tcl initialization scripts with def‐
initions for the unknown command and the auto_load facility. Contains
the initialization scripts implementing the dcecp commands and tasks.
The implementation sets the Tcl variable dcecp_library to dce‐
shared/dcecp by default. Contains user customizations.
Administration Objects
A dcecp command has the following syntax: object operation [argument]
[-option [opt_arg]] ...
where:
Specifies the name of a dcecp administration object. Examples of
administration objects are Cell Directory Service (CDS) directories,
access control lists (ACLs), Distributed Time Service (DTS) servers,
server control objects, and so on. Each administration object is
briefly described below. Specifies the name of an action, such as cre‐
ate, show, or remove, that is to be performed on an administration
object. For complete descriptions of operations supported by each
dcecp object, refer to individual object reference pages. Common oper‐
ations are briefly described below. Specifies the name of one or more
specific objects to operate on. Most, but not all, dcecp objects take
an argument. Refer to the individual reference pages for descriptions
of the arguments supported by various objects. Specifies a qualifier
that controls the precise behavior of a dcecp command. Most, but not
all, dcecp commands take options. Specify options by preceding the
option name with a dash, as in -replica. Some options take an argu‐
ment, opt_arg, that can be a name or a value. The following command
shows a -clearinghouse option and its argument, which is the name of a
CDS clearinghouse:
directory create /.:/admin -clearinghouse /.:/boston_ch
The DCE control program supports the following dcecp administration
objects. For complete descriptions of the administration objects,
refer to the individual object reference pages. Manages an account in
the DCE Security Service registry. Manages DCE ACLs. Manipulates
attribute lists in scripts. Manages the audit daemon on any DCE host.
Displays the audit event classes on any DCE host. Manages audit event
filters on any DCE host. Displays audit trail files on the local host.
Manages the CDS server daemon on any DCE host. Manages cell names
known to CDS. Manages the CDS clerk cache on any DCE host. Manages
the CDS client daemon on any DCE host. Performs cellwide tasks. Per‐
forms cell aliasing and connection tasks. Manages CDS clearinghouses
on the local host. Manages the clock on any DCE host. Manages direc‐
tory entries in the CDS namespace. Manages DTS on any host. Displays
remote endpoints, manages local endpoints. Manages DCE groups in the
security service. Performs tasks involving a host in a DCE cell. Man‐
ages host-specific information on any DCE host. Manages host-specific
variables on the local DCE host. Manages server key tables on any DCE
host. Manages softlinks in CDS. Manages routing for DCE serviceabil‐
ity messages. Manages CDS name translation. Manages object entries in
CDS. Manages DCE organizations in the Security Service. Manages DCE
principals in the Security Service. Manages DCE security replicas and
registry wide information. Manages a server entry in CDS. Manages a
group entry in CDS. Manages a profile entry in CDS. Manages the secu‐
rity validation service on any DCE host. Manages DCE servers on any
DCE host. Performs tasks involving individual user information.
Manipulates Universal Time Coordinated (UTC) timestamps. Manipulates
(generates or compares) Universal Unique Identifiers (UUIDs). Manages
schemas for extended registry attributes (ERAs).
Common Operations
This section describes operations common to more than one object. Some
operations presented here are implemented in all objects, some in only
a few, and some only for specific types of objects such as containers
(for instance, CDS directories). Adds an object to a container. It is
implemented for all objects that represent containers. The argument is
a list of names of containers. The required -member option is used to
specify the name of the member to be added to the containers. Its
value is a list of members to be added. If lists are specified for
both the -member option and as the argument, then each member name is
added to each container. For example, it is used to add a member to a
remote procedure call (RPC) group and is used to add an element to an
RPC profile. This operation returns an empty string on success.
Returns the names of all instances of an object. It usually takes no
argument. In some cases, though, an argument specifying a scope, such
as a cell name, is optional. For example, the principal catalog com‐
mand returns a list of all principals in the registry. By default,
full names are returned. Some objects support a -simplename option,
which returns names in a shorter form (either relative or not fully
qualified). The order of the returned list depends on the object.
Creates a new instance of an object. It takes one argument, a list of
names of instances to be created. This operation returns an empty
string on success. Returns an error if the object already exists. For
some objects this command takes a -attribute option or a set of
attribute options to specify attributes on the new object. Destroys an
instance of the object. It takes one argument, a list of names of
instances to be deleted. This operation returns an empty string on
success. If the object does not exist, an error is returned. Returns
help information on the object as described in the Help section. It
takes an argument, which may be an operation supported by the object or
the -verbose option to return more information. Returns a list of the
names of all the members of a container. This operation returns names
only and not any other information about the members. It is imple‐
mented on all objects that represent containers. The argument is a
list of names of containers for which to return members. The order of
the returned list depends on the object. If more than one container
name is given, all member names are returned in one list. This opera‐
tion is used to modify attributes, policies, counters, or any other
information in an object. Therefore, all attributes, policies, coun‐
ters, and so forth must have unique names. This operation is not
available to all objects. The argument is a list of names of objects to
modify.
The specific modification to be made to an object is described by one
or more of the -add, -remove, or -change options. If more than one is
used, the entire modify operation is treated atomically in that either
it all will work or none of it will. The order of the options does not
matter. Each option can be used only once per command invocation.
This operation returns an empty string on success. Used to add an
attribute to an object or merely to add values to an existing
attribute. The value of this option is an attribute list. Used to
remove an entire attribute or merely some values from an attribute.
The value of this option is an attribute list. Used to change one
attribute value to another. The value of this option is an attribute
list. Returns a list of the operations supported by the object. It
takes no arguments, and always returns a Tcl list suitable for use in a
foreach statement. The operations in the list are in alphabetical
order with the exception of help and operations, which are listed last.
To return the elements fully sorted, use the following command: lsort
[object operations] Removes an object from a container. It is imple‐
mented for all objects that represent containers. The argument is a
list of names of containers. The remove operation requires one option,
-member, which is used to specify the name of the member to be removed
from the container. The value is a list of names of members of the
containers. If the value of this option and the argument to the com‐
mand are both lists, then each listed member is removed from each spec‐
ified container. If the members do not exist an error is returned.
This operation returns an empty string on success. This operation
changes the name of a specified object. The argument is a single name
of an object to be renamed, that is, it cannot be a list. Takes a
required -to option with a value of the new name. The value may not be
a list. This operation returns an empty string on success. Returns
information about an object instance. Objects can have various types
of information such as attributes, counters, policies, and so on. The
show operation is used to return any of this information. Options are
passed to the command to specify what information is to be returned.
Most of the options used for this purpose are in the plural form such
as -all, -attributes, -counters, and -members.
Unlike the list operation, which returns information about the members
of a container, the show operation looks only at the named object
instance. If the object is a container, the show operation does not
return information about the members, only the container itself.
This operation takes one argument which is a list of names of instances
to be shown. Tells the instance to synchronize with any replicas of
itself. In CDS terminology, this operations performs a skulk on a
directory; in DTS, it causes a server to synchronize. This operation
is implemented for all objects that support replication. The argument
is a list of instance names to synchronize. If more than one instance
name is given, each instance synchronizes with all of its replicas.
Pairwise synchronization is not supported. This operation returns an
empty string on success.
Miscellaneous Commands
The DCE control program includes a set of commands for miscellaneous
operations. Initializes a base Tcl interpreter with all the dcecp com‐
mands. Displays the supplied string as output. Takes a DCE status
code as an argument and returns the text of the associated message as
found in the message catalogs. The argument can be in decimal, octal
(leading 0), or hexadecimal (leading 0x) notation. Creates a new login
context, which persists until the end of the dcecp session or until
destroyed by logout. The login comand also sets the _c convenience
variable to the name of the cell logged in to and the _u convenience
variable to the name of the principal that issued the login command.
Convenience variables are discussed in a separate section of this ref‐
erence page. Login contexts are stacked. Takes an account name as an
argument. The password is prompted for and not echoed to the screen.
Also takes the -password option to enter a password. Logs you out of
the current login context as established with a previous login command.
You can only log out of contexts that were created with the dcecp
login. Trying to log out of an inherited context results in an error.
Leaving dcecp logs out all contexts created in the session. Exits from
dcecp. A synonym of the Tcl built-in command exit. Takes a partial
string binding and returns a fully bound string binding. Takes a
required -interface option and an optional -object option with an
interface identifier as an argument to provide enough information for
the mapping to occur. Spawns a command shell for the user. The value
of the SHELL environment variable is used to obtain the name of the
shell to spawn. When the command shell terminates, control is returned
to dcecp. If the shell is called with arguments, they are passed to
the shell and executed. Control is returned upon completion. Always
returns an empty string, though an error exception is generated if the
shell exits abnormally.
Command Processing
The DCE control program supports the Tcl built-in commands as well as
its own commands. If a command name is unknown to dcecp, it is passed
to the unknown function and dcecp evaluates it using the following
algorithm: If the command is found in a dcecp script file, dcecp exe‐
cutes the command. If the command exists as an executable UNIX pro‐
gram, dcecp executes the command. Therefore, you can invoke any UNIX
command from the dcecp prompt (for example, ls -l). Because you do not
leave dcecp, you don not lose any context you have established. If you
have invoked the command at the top level of the dcecp shell and the
command requests C-shell-like history substitution (such as !!, !number
or ^old^new), dcecp emulates the C shell's history substitution. If
you have invoked the command at the top level of the dcecp shell and
the command is a unique abbreviation for another command, dcecp invokes
the command.
Abbreviations
The dcecp command makes use of two mechanisms to allow all object
names, operation names, and options to be abbreviated to the shortest
unique string in interactive commands.
The first mechanism relies on the unknown command whose behavior is
described in the Command Processing section of this reference page.
The second mechanism is built in to the individual dcecp commands them‐
selves. This mechanism allows the operation name to be abbreviated to
the shortest unique operation string supported by the object, and the
option names to be abbreviated to the shortest unique string represent‐
ing an option supported by an object and operation.
For example, consider the following directory create command: directory
create /.:/admin/printers/ascii -replica -clearinghouse /.:/SFO_ch
In the abbreviated form, the same command can be entered as follows:
dir cre /.:/admin/printers/ascii -r -c /.:/SFO_ch
Although abbreviating commands and options is a good way to save key‐
strokes when typing interactive commands, abbreviations are not recom‐
mended for use in scripts. New procedures in scripts can cause abbre‐
viations to become ambiguous. Furthermore, abbreviations are not
always portable. When scripts move to other machines, some definitions
may be left behind so scripts may not work correctly. Always spell out
complete names in scripts.
Syntax
The dcecp commands have a default word order, which is object opera‐
tion. This order facilitates adding new objects because new objects
can simply be added along with their operations.
You can configure dcecp to accept commands ordered as operation object
by loading a script called verb-object.dcecp. Users who have access to
the operation object order continue to have access to the object opera‐
tion order. You can load the script for all users on a host by includ‐
ing the following line in the system's init.dcecp file: source verb-
object.dcecp
You can configure operation object for individual users by including
the line in that user's .dcecprc file.
Attribute Lists
Many commands need to specify attributes to operate upon. For example,
the modify operation allows attributes to be changed and the create
operation often allows attributes to be created along with the object.
In all cases, you can use an attribute list to specify the attributes
and their values. Doing so makes passing information from one command
to another very easy. For example, an ACL copy operation could be
written as follows: # copy acl name1 to acl name2 # no error checking
proc acl_copy {name1 name2} {
acl replace $name2 -acl [acl show $name1] }
Attribute Options
While attribute lists are useful for writing scripts, they are often
not user friendly. For those objects that have a fixed list of
attributes (for instance, principal and dts, but not object), wherever
an attribute list is allowed, options for each attribute that have the
same name as the attribute are allowed followed by their values. For
example, the following are equivalent: principal create smith
-attribute {{quota 5} {uid 123}}
principal create melman -quota 5 -uid 123
Lists of Lists
The DCE control program interpreter relies on list structures to parse
command input and return command output. For instance, the following
sample command removes the user ACL entry for the principal melman from
an object called /.:/foo. acl modify /.:/foo -remove {user melman}
Because the -remove option uses a list structure to group attributes
and values in the option argument, it can take a list of ACL entries as
in the following example, which removes the user ACL entry for the
principals melman and salamone: acl modify /.:/foo -remove {{user mel‐
man} {user salamone}}
Lists of one value that do not contain spaces do not require braces.
The string syntax of an ACL entry allows the type and key to be sepa‐
rated by a : (colon), so the following are valid: acl modify /.:/foo
-remove user:melman
acl modify /.:/foo -remove {user:melman user:salamone}
If only one ACL entry given, that is, the -remove option's value has
only one element (and that element does not contain spaces), then
braces are not needed to delimit the list. The following are all
valid, but all are examples with unnecessary braces: acl modify /.:/foo
-remove {{user melman}}
acl modify /.:/foo -remove {{{user melman}}}
acl modify /.:/foo -remove {user:melman}
acl modify /.:/foo -remove {{user:melman} {user:salamone}}
Convenience Variables
All dcecp commands set several variables on execution. The variables
contain the name of the object operated on, the return value of the
last command, the cell name of the last object operated on, and so on.
To avoid unnecessary typing, you can substitute the value of these
variables into the next command.
Convenience variables behave just like other variables in dcecp. Thus,
you can trigger variable substitution by prepending a $ (dollar sign)
before the name of the variable. Alternatively, you can trigger sub‐
stitution by using set. The convenience variables can be set only by
using dcecp.
The following variables are defined by dcecp: Holds the name of the
server bound to by the last command. This variable is actually a Tcl
array where the indexes are used to identify the service. Currently
there is only one index is defined: sec. Refer to the variable as
_b(sec).
The value specifies the name of a server in whatever manner the service
finds useful. This value could be the name of an RPC server entry in
the namespace, a string binding, or the name of a cell. This variable
cannot be set by the user. Holds the cell name of the current princi‐
pal. The login command sets the cell name (_c) and principal name (_u)
convenience variables at login (see the login command). This variable
cannot be set by the user. This variable alters the behavior of most
commands that operate on a CDS object. It indicates the confidence you
have in the local CDS daemon to fulfill requests. The legal values are
low, medium, and high. The default is medium. Holds the last DCE
error code encountered. This variable has meaning only if dcecp is
able to determine what the error code is. The value -l (negative one)
is used when an actual error code is unavailable. This variable cannot
be set by the user. Holds the hostname the current user is operating
on. This variable cannot be set by the user. Holds a flag that indi‐
cates the mode in which the dcecp session is operating. This variable
is set to true if the dcecp session was started with the -local option.
This variable cannot be set by the user. Holds a list of the names
entered in the last command. These names are the names that the com‐
mand operated on, typically entered as the third argument. This vari‐
able cannot be set by the user.
For example, the following command lists the simplenames of the entries
in the /.: directory: dcecp> directory list /.: -simplename hosts sub‐
sys absolut_ch cell-profile fs lan-profile sec sec-v1 dcecp>
The _n variable then contains the following name: dcecp> echo $_n /.:
dcecp>
The following command creates the /.:/x and /.:/y directories: dcecp>
directory create {/.:/x /.:/y} dcecp>
The _n variable then contains the following names: dcecp> echo $_n
/.:/x /.:/y dcecp> Holds the object used in the last operation. For
example, if the last command was dir show /.:, then _o is directory.
This variable cannot be set by the user. Holds the parent of the
object named in the _n variable. If the _n variable is a list, the _p
variable is a list of the same length, where each element is the parent
of the corresponding element in _n. If an object in _n has no parent,
the value of _p is the empty string. This variable cannot be set by
the user.
The following example creates the directories named /.:/gumby and
/.:/pokey. When the command completes, the _n variable contains the
names gumby and pokey. The _p variable contains the names of the par‐
ents of /.:/gumby and /.:/pokey: dcecp> directory create {/.:/gumby
/.:/pokey} dcecp>
dcecp> echo $_n /.:/gumby /.:/pokey dcecp>
dcecp> echo $_p /.: /.: dcecp> Holds the return value of the last exe‐
cuted command. This variable cannot be set by the user. Holds the
name of the server to bind to by the next command. This variable is
actually a Tcl array where the indexes are used to identify the ser‐
vice. The currently defined indexes are sec, cds, dts, and aud.
The value specifies the name of a server in whatever manner the user
finds useful. This value could be the name of an RPC server entry in
the namespace, a string binding, or the name of a cell. Users can set
this variable by issuing the set command to select the server to use.
Each service treats the values of this variable (array) differently.
For example, the Security Service uses this variable to select the reg‐
istry to bind to for the next command, and as a default for the next
registry operation. If bound to a read-only replica and an update is
requested, dcecp tries to bind to the master registry to perform the
change. CDS attempts to communicate only with the CDS server named by
the variable. If the named CDS server cannot satisfy a request for any
reason, the request fails. The auditing service and DTS uses its vari‐
able in a manner similar to the CDS server. To contact an audit daemon
or DTS server on another host, set this variable to identify that
server.
For information about an object's use of this variable, see the
object's reference page or use the object's help -verbose operation.
Holds the current principal name. The login command sets the cell name
(_c) and principal name (_u) convenience variables at login (see the
login command). This variable cannot be set by the user.
Error Handling
All dcecp operations return either a list of some information or an
empty string on success. If an error occurs, dcecp returns an error
message. The DCE control program also provides a catch command to help
scripts catch errors and invoke error handlers.
The DCE control program provides two global variables that store error
information returned from commands. The errorInfo variable contains
the stack-trace of the error messages. When errors occur, dcecp com‐
mands return one line error messages by default. If the variable
dcecp_verbose_errors is set to 1, then a stack trace as it would appear
in errorInfo is output as well.
When a dcecp command argument is a list of objects, the command oper‐
ates on multiple objects. These operations are usually performed iter‐
atively. If an error occurs, the command ceases at the time of error,
producing an exception. Some operations will have finished and others
will not have. These operations are always performed in the order
listed, and the error message should make it clear on which object the
command failed.
Help
The DCE control program provides several kinds of help. All returned
help strings are obtained from appropriate message catalogs.
To see which operations an object supports, use the operations command.
An example follows: dcecp> principal operations catalog create delete
modify rename show help operations dcecp>
This command provides simple help similar to usage messages found on
many systems. Users unsure of an operation name or of whether an oper‐
ation is supported by an object can use this command to find the
answer. The output is a dcecp list that can be used by other dcecp
commands.
To see other information about an object, use an object's help opera‐
tion. All dcecp objects have a help operation that offers three kinds
of information. View brief information about an object's operations by
using help without arguments or options. Operations are listed in
alphabetical order with the operations and help operations listed last.
For example: dcecp> principal help catalog Returns all the
names of principals in the registry. create Creates a DCE
principal. delete Deletes a principal from the registry.
modify Changes the information about a principal. rename
Renames the specified principal. show Returns the
attributes of a principal. help Prints a summary of
command-line options. operations Returns a list of the valid
operations for this command. dcecp> View brief information about the
options an operation supports by using help with the name of the opera‐
tion as the argument. This operation returns attribute options in
alphabetical order. If no options are supported, an empty string is
returned. For example: dcecp> principal help create -alias
Indicates the principal name is an alias of the uid. -attribute
Specify principal attributes in an attribute list format. -fullname
Fullname of the principal. -quota How many registry
objects can the principal create. -uid User Identifier
of the new principal. -uuid Orphaned UUID to be adopted
by the principal. dcecp>
View a short description of a dcecp object by using the help operation
with the -verbose option. This operation returns text explaining what
the object represents and how to use it. For example: dcecp> principal
help -verbose This object allows manipulation of principal information
stored in the DCE registry. The argument is a list of either relative
or fully-qualified principal names. Specify fixed attributes using
attribute options or an attribute list. Specify any extended
attributes using an attribute list. Principal operations connect to a
registry that can service the request. Specify a particular registry
by setting the _s(sec) convenience variable to be a cell-relative or
global replica name, or the binding of the host where the replica
exists. The completed operation sets the _b(sec) convenience variable
to the name of the registry contacted. dcecp>
Utility Library
The file opt/dcelocal/dcecp/utility.dcp contains Tcl functions useful
for DCE administration. The functions, which can vary from release to
release, are fully commented to document their use.
Reference Pages
To display a reference page for a dcecp administration object, use the
man command and preface the object name with dcecp_. For example, to
display the registry reference page enter: man dcecp_registry Users
with [POSIX.2] systems can view dcecp administration object reference
pages without exiting dcecp. For example: dcecp> man dcecp_registry
Command-Line Editing
You can edit a line before it is sent to dcecp by typing certain con‐
trol characters and escape sequences. To enter a control character,
hold down the <Control> key and press the appropriate character key.
(Control characters are indicated in DCE documentation by the notation
<Ctrl-x>, where x is the second key.) To enter an escape sequence,
press <Escape> then press one or more character keys. (Escape
sequences are indicated in DCE documentation by the notation <ESC x>,
where x is the second key.) Escape sequences are case-sensitive; con‐
trol characters are not.
You can enter an editing command anywhere on a line. In addition, you
can enter <Return> anywhere on the line.
You can specify a number [n] as a repeat count. To enter a repeat
count, press <Escape>, a number, and the command you want to execute.
For example, <ESC 4><Ctrl-d> deletes the next four characters on a
line.
Use the following control characters and escape sequences for line
editing:
Action Performed Move to the beginning of the line Move left (backward)
[n] Delete the next character [n] Move to the end of the line Move
right (forward) [n] Ring the bell Delete the character before the cur‐
sor [n] Complete the filename (<Tab>) Done with the line (<Return>)
Kill to the end of the line (or column [n]) Redisplay the line Done
with the line (alternate <Return>) Get the next line from history [n]
Get the previous line from history [n] Search backward (or forward if
[n]) through history for the text; start the line if the text begins
with an up arrow Transpose the characters Insert the next character
even if it is an edit command Wipe to the mark Exchange the current
location and mark Yank back the last killed test Start an escape
sequence (<Escape>) Move forward to the next character c Delete the
character before the cursor [n]
Action Performed Delete the previous word (<Backspace>) [n] Delete the
previous word (<Delete>) [n] Set the mark (<Space>); refer to the
<Ctrl-X><Ctrl-X> and <Ctrl-Y> control characters Get the last (or
[n]th) word from the previous line Show the possible completions Move
to the start of history Move to the end of history Move backward one
word [n] Delete the word under the cursor [n] Move forward one word [n]
Make the word lowercase [n] Make the word uppercase [n] Yank back the
last killed text Make area up to mark yankable Set repeat count to the
number nn
The DCE control program also supports filename completion. For exam‐
ple, suppose the root directory has the following files in it: vmunix,
core, vmunix.old.
If you type rm /v and then press <Tab>, dcecp finishes off as much of
the name as possible by adding munix. If the name is not unique, the
terminal alarm sounds. If you enter <ESC ?>, dcecp displays the two
possible complete filenames: vmunix and vmunix.old. If you respond by
entering a . (period) and by entering <Tab>, dcecp completes the file‐
name for you.
Command History and Command-Line Recall
The DCE control program includes a history facility that stores previ‐
ously entered commands. View the stored commands using the history
command.
By default, the history facility stores the 20 most recent commands,
but you can use a history keep command to change this as follows:
dcecp> history keep 50 dcecp>
Each stored command is numbered so you can recall it by using a !
(exclamation point) followed by the event number, as follows: dcecp> !7
[execution of event 7] dcecp>
Recall a specific command using an ! (exclamation point) followed by
the first unique characters of a previously entered command, as fol‐
lows: dcecp> !dir [execution of last event beginning with dir] dcecp>
You can also recall and revise the most recent command using the
^old^new syntax familiar to UNIX users, as follows: dcecp> directory
vreate /.:/admin/printers Error: Unrecognized argument 'vreate'.
dcecp> dcecp> ^vreate^create dcecp>
EXAMPLES
Invocations
The following examples show some ways to issue dcecp commands: Invoke
dcecp for interactive use: % dcecp dcecp> Invoke dcecp for a single
command: % dcecp-c clock show 1994-04-21-19:12:42.203+00:00I----- %
Invoke dcecp and run a script: % dcecp get_users.Tcl %
Simple Object Commands
dcecp> acl show /.: -ic {unauthenticated r--t---} {group sub‐
sys/dce/cds-admin rwdtcia} {group subsys/dce/cds-server rwdtcia}
{any_other r--t---} dcecp>
% dcecp-c directory show /.:/subsys {RPC_ClassVersion {01 00}}
{CDS_CTS 1995-10-11-14:06:47.884826100/08-00-09-85-b5-a6} {CDS_UTS
1995-10-23-03:06:43.209673100/08-00-09-85-b5-a6} {CDS_ObjectUUID
0c27c0ac-03d6-11cf-ad88-08000985b5a6} {CDS_Replicas
{{CH_UUID 03ccab5c-03d6-11cf-ad88-08000985b5a6}
{CH_Name /.../gumby1/blech_ch}
{Replica_Type Master}
{Tower {ncadg_ip_udp 15.22.50.213}}
{Tower {ncacn_ip_tcp 15.22.50.213}}}} {CDS_AllUpTo
1995-10-23-13:06:43.560848100/08-00-09-85-b5-a6} {CDS_Convergence
medium} {CDS_ParentPointer
{{Parent_UUID 044a2a14-03d6-11cf-ad88-08000985b5a6}
{Timeout
{expiration 1994-04-19-16:39:58.049}
{extension +1-00:00:00.000I0.000}}
{myname /.../brain_cell.osf.org/subsys}} {CDS_DirectoryVersion 3.0}
{CDS_ReplicaState on} {CDS_ReplicaType Master} {CDS_LastSkulk
1995-10-23-13:06:43.560848100/08-00-09-85-b5-a6} {CDS_LastUpdate
1995-10-23-03:06:43.209673100/08-00-09-85-b5-a6} {CDS_Epoch
0c3512fc-03d6-11cf-ad88-08000985b5a6} {CDS_ReplicaVersion 3.0} %
The foreach Loop
dcecp> foreach i [group list temps] { > account modify $i -description
"temps research" -expdate 1997-01-22-11} dcecp>
RELATED INFORMATION
Commands: cds_intro(1m), dce_intro(1m), dts_intro(1m), sec_intro(1m).
dcecp(1m)