Vorakl's Bash library

Collection of useful modules to simplify everyday programming

Travis CI: continuous integration status


This library aims to minimize the complexity of Bash programming by abstracting special cases, tricky syntax, and commonly used operations behind functions with a clear interface and intuitive behavior. All modules can be safely embedded in other's code as all internal names are namespaced by a unique prefix per each module.

Bash is a powerful programming language and very useful for operational tasks. Without any doubts, this is the first "tool" for any system administrators of Unix-like OS's. Although, non-trivial tasks require non-trivial knowledge, and sometimes it needs more attention on a language specifics than on solving a task itself. Unfortunately, Bash doesn't have some sort of a "standard library" with all that functions which make a development process easier, faster and more efficient in all senses.

Suddenly, I realized that I iconstantly use the same functions, same blocks of code everywhere, and as copy-pasting them from one script to another is not the right approach, I decided to organize the most used functions in a modules under one library and place them on a publicly available resource over http. This makes possible to download them using simple tools or even a pure Bash, always have the latest version of each module or even get stuck to a specific version if a reproducibility is needed.

Versions and Releases

All existing releases including archives are available on the Github Releases page. Releases are always linked to stable versions. There are also two version files available:

  • latest.lst, for modules located at http://vbl.vorakl.com/latest/
  • stable.lst, for modules located at http://vbl.vorakl.com/stable/

Versions from latest.lst allow you to stick to them in the future by addressing modules at http://vbl.vorakl.com/v?.?.?/ location.