Some programs like nice
can invoke other programs; for
example, the command ‘nice cat file’ invokes the program
cat
by executing the command ‘cat file’. However,
special built-in utilities like exit
cannot be invoked
this way. For example, the command ‘nice exit’ does not have a
well-defined behavior: it may generate an error message instead of
exiting.
Here is a list of the special built-in utilities that are standardized by POSIX 1003.1-2004.
. : break continue eval exec exit export readonly return set shift times trap unset
For example, because ‘.’, ‘:’, and ‘exec’ are special, the commands ‘nice . foo.sh’, ‘nice :’, and ‘nice exec pwd’ do not work as you might expect.
Many shells extend this list. For example, Bash has several extra
special built-in utilities like history
, and
suspend
, and with Bash the command ‘nice suspend’
generates an error message instead of suspending.