Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
SHTK(3)		       FreeBSD Library Functions Manual		       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 initializa-
     tion 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_import(3)

   Modules
     shtk_bool(3), shtk_cleanup(3), shtk_cli(3), shtk_config(3), shtk_cvs(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>.

FreeBSD	13.0		       November	7, 2014			  FreeBSD 13.0

NAME | DESCRIPTION | SEE ALSO | AUTHORS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=shtk&sektion=3&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help