SHELL_BUILTINS(1) | User Commands | SHELL_BUILTINS(1) |
shell_builtins, case, for, foreach, function, if, repeat, select, switch, until, while - shell command interpreter built-in commands
The shell command interpreters csh(1), ksh(1), ksh93(1), and sh(1) have special built-in commands. The commands case, for, foreach, function, if, repeat, select, switch, until, and while are commands in the syntax recognized by the shells. They are described in the Commands section of the manual pages of the respective shells. In ksh93(1), fc, hash, stop, suspend, times, and type are aliases by default. In ksh93, the following built-ins are bound to the /bin pathname by default and are invoked if the pathname search encounters an executable command of that name in the /bin or /usr/bin directory: cat, chown, getconf, head, mkdir, rmdir, tee, uniq, and wc.
The remaining commands listed in the following table are built into the shells for reasons such as efficiency or data sharing between command invocations. They are described on their respective manual pages.
Command | Shell |
++**alias | csh, ksh, ksh93 |
bg | csh, ksh, ksh93, sh |
+*break | csh, ksh, ksh93, sh |
builtin | ksh93 |
case | csh, ksh, ksh93, sh |
cat | ksh93 |
cd | csh, ksh, ksh93, sh |
chdir | csh, sh |
chown | ksh93 |
command | ksh93 |
+*continue | csh, ksh, ksh93, sh |
dirs | csh |
disown | ksh93 |
echo | csh, ksh, ksh93, sh |
+*eval | csh, ksh, ksh93, sh |
+*exec | csh, ksh, ksh93, sh |
+*exit | csh, ksh, ksh93, sh |
++**export | ksh, ksh93, sh |
false | ksh, ksh93 |
fc | ksh, ksh93 |
fg | csh, ksh, ksh93, sh |
for | ksh, ksh93, sh |
foreach | csh |
function | ksh, ksh93 |
getconf | ksh93 |
getopts | ksh, ksh93, sh |
glob | csh |
goto | csh |
hash | ksh, ksh93, sh |
hashstat | csh |
head | ksh93 |
hist | ksh93 |
history | csh |
if | csh, ksh, ksh93, sh |
jobs | csh, ksh, ksh93, sh |
kill | csh, ksh, ksh93, sh |
let | ksh, ksh93, |
limit | csh |
login | csh, ksh, ksh93, sh |
logout | csh |
mkdir | ksh93 |
nice | csh |
+*newgrp | ksh, ksh93, sh |
nohup | csh |
notify | csh |
onintr | csh |
popd | csh |
ksh, ksh93 | |
printf | ksh93 |
pushd | csh |
pwd | ksh, ksh93, sh |
read | ksh, ksh93, sh |
++**readonly | ksh, ksh93, sh |
rehash | csh |
repeat | csh |
+*return | ksh, ksh93, sh |
select | ksh, ksh93 |
+set | csh, ksh, ksh93, sh |
setenv | csh |
shift | csh, ksh, ksh93, sh |
sleep | ksh93 |
source | csh |
stop | csh, ksh, ksh93, sh |
suspend | csh, ksh, sh |
switch | csh |
tee | ksh93 |
test | ksh, ksh93, sh |
time | csh |
*times | ksh, ksh93, sh |
*+trap | ksh, ksh93, sh |
true | ksh, ksh93 |
type | ksh, ksh93, sh |
++**typeset | ksh, ksh93 |
ulimit | ksh, ksh93, sh |
umask | csh, ksh, ksh93, sh |
+unalias | csh, ksh, ksh93 |
unhash | csh |
uniq | ksh93 |
unlimit | csh |
+unset | csh, ksh, ksh93, sh |
unsetenv | csh |
until | ksh, ksh93, sh |
*wait | csh, ksh, ksh93, sh |
whence | ksh, ksh93 |
while | csh, ksh, ksh93, sh |
Input/output redirection is now permitted for these commands. File descriptor 1 is the default output location. When Job Control is enabled, additional Special Commands are added to the shell's environment.
In addition to these built-in reserved command words, sh also uses:
:
.filename
Built-in commands are executed within the C shell. If a built-in command occurs as any component of a pipeline except the last, it is executed in a subshell. In addition to these built-in reserved command words, csh also uses:
:
Input/Output redirection is permitted. Unless otherwise indicated, the output is written on file descriptor 1 and the exit status, when there is no syntax error, is zero.
Commands that are preceded by one or two * (asterisks) are treated specially in the following ways:
In addition to these built-in reserved command words, ksh also uses:
* : [ arg ... ]
* .file [ arg ... ]
Input/Output redirection is permitted. Unless otherwise indicated, the output is written on file descriptor 1 and the exit status, when there is no syntax error, is zero.
Except for :, true, false, echo, newgrp, and login, all built-in commands accept -- to indicate end of options. They also interpret the option --man as a request to display the manual page onto standard error and -? as a help request which prints a usage message on standard error.
Commands that are preceded by one or two + are treated specially in the following ways:
In addition to these built-in reserved command words, ksh93 also uses:
: [ arg ... ]
.name [ arg ... ]
Intro(1), alias(1), break(1), builtin(1), cd(1), chmod(1), csh(1), disown(1), echo(1), exec(1), exit(1), find(1), getoptcvt(1), getopts(1), glob(1), hash(1), history(1), jobs(1), kill(1), ksh(1), ksh93(1), let(1), limit(1), login(1), logout(1), newgrp(1), nice(1), nohup(1), print(1), printf(1), pwd(1), read(1), readonly(1), set(1), sh(1), shift(1), sleep(1), suspend(1), test(1), time(1), times(1), trap(1), typeset(1), umask(1), wait(1), test(1B), chdir(2), chmod(2), creat(2), umask(2), getopt(3C), profile(5), environ(7)
November 20, 2007 | OmniOS |