Skip to content
Vorakl's Bash Library: a collection of Bash modules for everyday use
Shell
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github
bin
docs
examples
src.docs
src
tests
.gitattributes
.travis.yml
LICENSE
Makefile
README.md

README.md

Vorakl's Bash library

build-status

Introduction

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.

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.

Basically, for me using these modules help to

  1. reuse the same code everywhere which is checked and proved by the time
  2. simplify and speed up a development
  3. increase code readability

Modules

Versions and Releases

All existing releases including archives are available on the Github. 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 stable.lst allow you to stick to them in the future by addressing modules at http://vbl.vorakl.com/v?.?.?/ location.

Other documentation

You can’t perform that action at this time.