/ebash

enhanced bash

Primary LanguageShellApache License 2.0Apache-2.0

NOTE: Documentation is best viewed on github-pages

CI/CD

Bash

Overview

ebash is an open source project developed at NetApp/SolidFire as an open source project from 2011-2018 under the name bashutils and the Apache 2.0 License. I forked bashutils into ebash upon my departure from NetApp/SolidFire to continue active development and ensure it remained free and open source.

The primary goal of ebash is to significantly enhance bash code and make it more robust, feature rich and simple which greatly accelerates developer productivity.

Why bash

Bash is the ideal language of choice for writing low-level shell scripts and tools requiring direct shell access invoking simple shell commands on a system for a number of reasons:

  • Prolific. Installed on every UNIX machine, minimizing dependencies, install complexity and size.
  • Lightweight with low memory and CPU requirements suitable for appliances and embedded systems.
  • Ideal for tasks running shell commands as it is native, and simpler than in higher level languages.

Why ebash

Because bash is a lower level language, it lacks some of the features and more advanced data structures typically found in higher level languages. ebash aims to be the answer to this problem. The most important and compelling feature of ebash is implicit error detection. This typically results in bash scripts being 75% shorter due to removal of explicit error handling and the ability to leverage extensive ebash modules.

Quick Start