Shell builtin

From Wikipedia, the free encyclopedia

In Unix, a shell builtin is a command or a function, called from a shell, that is executed directly in the shell itself, instead of an external executable program which the shell would load and execute.

Shell builtins work significantly faster than external programs, because there is no program loading overhead. However, their code is inherently present in the shell, and thus modifying or updating them requires modifications to the shell. Therefore shell builtins are usually used for simple, almost trivial, functions, such as text output. Because of the nature of Unix, some functions of the operating system have to be implemented as shell builtins. The most notable example is cd, which changes the working directory of the shell. Because each executable program runs in a separate process, and working directories are specific to each process, loading cd as an external program would not affect the working directory of the shell that loaded it.

[edit] Examples

A widely used shell-builtin is the logout function, which terminates the session. This function has different names depending on the shell.

Some examples from bash include

$ cd ..
Loops (if, while, for and such)
$ echo

man bash-builtin will list a few on most UNIX-systems.