User Commands builtin(1)
NAME
builtin - ksh93 built-in function to add, delete, or display
shell built-ins
SYNOPSIS
builtin [-ds] [-f lib] [pathname ...]
DESCRIPTION
The ksh93 builtin command adds, deletes, or displays built-
in commands in the current shell environment. A built-in
command executes in the current shell process and can have side effects in the current shell. On most systems, theinvocation time for built-in commands is one or two orders
of magnitude less than commands that create a separate pro-
cess. For each pathname specified, the basename of the pathnamedetermines the name of the built-in. For each basename, the
shell looks for a C level function in the current shellwhose name is determined by pre-pending b_ to the built-in
name. If pathname contains a forward slash (/), the built-in
is bound to pathname. A built-in bound to a pathname is only
executed if pathname is the first executable found during apath search. Otherwise, built-ins are found prior to per-
forming the path search.If pathname is not specified, builtin displays the current
list of built-ins, or just the special built-ins if the -s
option is specified, on standard output. The full pathnamefor built-ins that are bound to pathnames are displayed.
Libraries containing built-ins can be specified with the -f
option. If the library contains a function named lib_init(),
this function is invoked with argument 0 when the library isloaded. The lib_init() function can load built-ins by invok-
ing an appropriate C level function. In this case there is no restriction on the C level function name. The C level function is invoked with three arguments. The first two are the same as main() and the third one is a pointer.The ksh93 builtin command cannot be invoked from a res-
tricted shell.SunOS 5.11 Last change: 1 May 2007 1
User Commands builtin(1)
OPTIONS The following options are supported:-d Delete each of the specified built-ins. Special
built-ins cannot be deleted.
-f lib On systems with dynamic linking, load and search
for built-ins in the shared library, lib.
Libraries are searched for in $PATH and system
dependent library directories. The system depen-
dent shared library prefix or suffix can be omit-
ted. Once a library is loaded, its symbols becomeavailable for the current and subsequent invoca-
tions of builtin. Multiple libraries can be speci-
fied with separate invocations of builtin.
Libraries are searched in the reverse order in which they are specified.-s Display only the special built-ins.
OPERANDS The following operands are supported: pathname Specifies the pathname. The basename of thepathname determines the name of the built-in.
EXIT STATUS The following exit values are returned: 0 Successful completion. >0 An error occurred.EXAMPLES
Example 1 Loading a builtin Command
The following example loads a builtin command mycmd from the
library libfoo.so:example% builtin -f foo mycmd
SunOS 5.11 Last change: 1 May 2007 2
User Commands builtin(1)
AUTHORS David Korn, dgk@research.att.comATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Availability | SUNWcs ||_____________________________|_____________________________|
| Interface Stability | Uncommitted ||_____________________________|_____________________________|
SEE ALSO
ksh93(1), whence(1), attributes(5)SunOS 5.11 Last change: 1 May 2007 3