System Debug Reference Manual (32650-90888)
46 Chapter2
User Interface
Aliases
while $1 < $20 do {cmd1;cmd2;cmd3}
which will loop infinitely. Next consider the following:
$nmdebug > var n "mom"
$nmdebug > wl "|n"
mom
$nmdebug > wl "\|n"
|n
Note how the presence of the backslash cancels the command line substitution.
Aliases
Aliases may be established for command names, macros, and even other aliases. By
defining an alias for one of these objects, one is merely specifying an alternative name by
which the aliased object may be referred. Note that this defines an alternative, rather than
a change, and affects no other aspect of the thing being aliased. For instance, the alias has
no effect on the parameters of an aliased command. Once established, the alias name may
be used wherever the original name is valid.
Command Lookup Precedence
The second phase of command line scanning is performed after the preprocessing phase, in
which command line substitution is performed. In the second phase, the command name is
extracted from the command line and is interpreted according to the following sequence:
1. Search for the command in the alias table. If found, repeat this process recursively with
the aliased name until the search fails. Infinitely recursive aliases result in an error.
Proceed with the aliased command name, if found.
2. Search for the command in the command table.
3. Search for the command in the window command table.
4. Search for the command in the macro definition table. If found, execute the macro as a
command, discarding any macro return value.
5. If still unresolved, then fail.
Error Handling
System Debug employs an error stack for error messages and maintains the environment