SHTK(3)

NAME
shtk - Application Programming Interface (API) of the Shell Toolkit

DESCRIPTION
The Shell Toolkit, or shtk for short, is a collection of modules written in sh(1) that provide common functionality to simplify the implementation of complex shell scripts. This page provides an introduction to writing scripts using shtk and serves as a reference to all the provided modules by it.

  Script structure
Scripts using shtk follow this structure:

    shtk_import module1
    shtk_import moduleN
    # possibly define globals here
    some_custom_function() {
        local arg1="${1}"; shift
        local arg2="${1}"; shift
        # do something
    }
    main() {
        # program entry point; automatically invoked
    }

In particular, note: that there is no shebang line at the beginning of the script; that there is no explicit call to main; and that there is no code outside of shell functions other than for calls to shtk_import(3).

  Script compilation
The shtk(1) tool offers a compilation process for scripts using shtk(3). In this context, compilation just refers to the addition of initialization boilerplate code to the script so that the correct modules can be located and that a well-known shell interpreter is used.

  Modules
The shtk_import(3) function depicted above is used to bring the specified modules into the script. For details on all existing modules, see the list of cross-referenced pages in the SEE ALSO section below.

SEE ALSO
shtk(1)

  Built-in functions
shtk_abort(3), shtk_import(3)

  Modules
shtk_bool(3), shtk_cleanup(3), shtk_cli(3), shtk_config(3), shtk_cvs(3), shtk_fs(3), shtk_hw(3), shtk_list(3), shtk_process(3), shtk_unittest(3), shtk_version(3)

AUTHORS
The shtk package was developed by Julio Merino <jmmv@google.com>.