Man Linux: Main Page and Category List


     libbash - A bash shared libraries package.


     libbash  is  a  package  that enables bash dynamic-like shared libraries.
     Actually its a tool for managing bash scripts  whose  functions  you  may
     want to load and use in scripts of your own.

     It  contains  a ‘dynamic loader’ for the shared libraries ( ldbash(1)), a
     configuration tool (ldbashconfig(8)), and some libraries.

     Using ldbash(1) you are able to load loadable  bash  libraries,  such  as
     getopts(1)  and  hashstash(1).   A bash shared library that can be loaded
     ldbash(1) must answer 4 requirments:

     1.     It must be installed in $LIBBASH_PREFIX/lib/bash (default is

     2.     It must contain a line that begins with ‘#EXPORT=’.  That line
            will contain (after the ‘=’) a list of functions that the library
            exports.  I.e. all the function that will be usable after loading
            that library will be listed in that line.

     3.     It must contain a line that begins with ‘#REQUIRE=’.  That line
            will contain (after the ‘=’) a list of bash libraries that are
            required for our library.  I.e. every bash library that is in use
            in our bash library must be listed there.

     4.     The library must be listed (For more information, see

   Basic guidelines for writing library of your own:
     1.     Be aware, that your library will be actually sourced. So,
            basically, it should contain (i.e define) only functions.

     2.     Try to declare all variables intended for internal use as local.

     3.     Global variables and functions that are intended for internal use
            (i.e are not defined in ‘#EXPORT=’) should begin with:
            For example, internal function myfoosort of hashstash library
            should be named as
            This helps to avoid conflicts in global name space when using
            libraries that come from different vendors.

     4.     See html manual for full version of this guide.


     Hai Zaar 〈〉
     Gil Ran 〈


     ldbash(1), ldbashconfig(8), getopts(1), hashstash(1) colors(1)
     messages(1) urlcoding(1) locks(1)