*Note that if your erase character is a `#', you will have to precede the `#' with a `\'. The fact that the `#' character is the old (pre-CRT) standard erase character means that it seldom appears in a file name, and allows this convention to be used for scratch files. If you are using a CRT, your erase character should be a ^H, as we demonstrated in section 1.1 how this could be set up.
*On some older Unix systems the DEL or RUBOUT key has the same effect. "stty all" will tell you the INTR key value.
** Another directory that might interest you is /usr/new, which contains many useful user-contributed programs provided with Berkeley Unix.
**The space between the `!' and the word `now' is critical here, as `!now' would be an invocation of the history mechanism, and have a totally different effect.
*** A command of the form
command >&! file
exists, and is used when
noclobber
is set and
file
already exists.
** If
noclobber
is set, then an error will result if
file
does not exist, otherwise the shell will create
file
if it doesn't exist.
A form
command >>! file
makes it not be an error for file to not exist when
noclobber
is set.
**The following two formats are not currently acceptable to the shell:
if ( expression ) # Won't work! then command ... endif
and
if ( expression ) then command endif # Won't work
*** It is also important to note that the current implementation of the shell limits the number of `:' modifiers on a `$' substitution to 1. Thus
% echo $i $i:h:t /a/b/c /a/b:t %
does not do what one would expect.
*Command expansion also occurs in input redirected with `<<' and within `"' quotations. Refer to the shell manual section for full details.