1089
Comment:
|
← Revision 7 as of 2020-04-25 02:18:36 ⇥
1132
Update link to dead article
|
Deletions are marked like this. | Additions are marked like this. |
Line 21: | Line 21: |
* http://cfajohnson.com/shell/articles/dynamically-loadable/ | * https://web.archive.org/web/20160303032434/http://cfajohnson.com/shell/articles/dynamically-loadable/ |
BASH has the ability to load compiled modules to create new commands which interface with the operating system more directly than can be achieved by calling external commands. These are called loadable builtins.
Loadable builtins must be compiled for your system. Some are included as examples in the bash source tree:
.../bash-4.0$ CC=whatever ./configure .../bash-4.0$ make .../bash-4.0$ exec ./bash .../bash-4.0$ cd examples/loadables/ .../loadables$ make .../loadables$ enable -f finfo finfo .../loadables$ help finfo
This requires a platform which bash knows how to support for loading shared objects/libraries. On most systems, bash supports this using the dlopen() function. If you're on older versions of HP-UX, there is a patch by GreyCat: bash-4.2-shl.diff (older version: bash-4.0-shl.diff).
A bit more info can also be found at: