2011-06-09 07:08:40 -04:00
|
|
|
This folder contains code snippets that can be reused by multiple
|
|
|
|
scripts. A brief description of each file follows.
|
|
|
|
|
|
|
|
output_format.sh:
|
2013-03-04 03:08:42 -05:00
|
|
|
Provides basic output formatting functions with levels 'plain', 'msg',
|
|
|
|
'msg2', 'warning' and 'error'. The 'msg' amd 'msg2' functions print to
|
|
|
|
stdout and can be silenced by defining 'QUIET'. The 'warning' and 'error'
|
2011-06-09 07:08:40 -04:00
|
|
|
functions print to stderr with the appropriate prefix added to the
|
|
|
|
message.
|
|
|
|
|
2012-04-08 12:32:17 -04:00
|
|
|
parseopts.sh:
|
|
|
|
A getopt_long-like parser which portably supports longopts and shortopts
|
|
|
|
with some GNU extensions. It does not allow for options with optional
|
|
|
|
arguments. For both short and long opts, options requiring an argument
|
|
|
|
should be suffixed with a colon. After the first argument containing
|
|
|
|
the short opts, any number of valid long opts may be be passed. The end
|
|
|
|
of the options delimiter must then be added, followed by the user arguments
|
|
|
|
to the calling program.
|
|
|
|
|
|
|
|
Reccommended Usage:
|
|
|
|
OPT_SHORT='fb:z'
|
|
|
|
OPT_LONG=('foo' 'bar:' 'baz')
|
|
|
|
if ! parseopts "$OPT_SHORT" "${OPT_LONG[@]}" -- "$@"; then
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
set -- "${OPTRET[@]}"
|
|
|
|
Returns:
|
|
|
|
0: parse success
|
|
|
|
1: parse failure (error message supplied)
|
2012-04-25 22:27:19 -04:00
|
|
|
|
|
|
|
human_to_size.sh:
|
|
|
|
A function to convert human readable sizes (such as "5.3 GiB") to raw byte
|
|
|
|
equivalents. base10 and base2 suffixes are supported, case sensitively. If
|
|
|
|
successful, the converted byte value is written to stdout and the function
|
|
|
|
returns 0. If an error occurs, nothing in written and the function returns 1.
|
|
|
|
Results may be inaccurate when using a broken implementation of awk, such
|
|
|
|
as mawk or busybox awk.
|
2012-05-06 18:27:43 -04:00
|
|
|
|
|
|
|
size_to_human.sh:
|
|
|
|
The reverse of human_to_size, this function takes an integer byte size and
|
|
|
|
prints its in human readable format, with SI prefixes (e.g. MiB, TiB).
|
2013-03-04 03:08:42 -05:00
|
|
|
|
|
|
|
term_colors.sh:
|
|
|
|
Contains some common color settings for output_format.sh.
|