Overview
BashLib64 is a Bash library that provides a simple abstraction layer for developing multi-platform scripts.
| Module | Purpose | 
|---|---|
| bl64-ans | Interact with Ansible | 
| bl64-arc | Manage archive files | 
| bl64-check | Check for conditions and report status | 
| bl64-cnt | Interact with container engines | 
| bl64-dbg | Show shell debugging information | 
| bl64-fmt | Format text data | 
| bl64-gcp | Interact with Google Cloud CLI | 
| bl64-iam | Manage OS identity and access service | 
| bl64-lib | Setup script run-time environment | 
| bl64-log | Write messages to logs | 
| bl64-msg | Display messages | 
| bl64-os | Identify OS attributes and provide command aliases | 
| bl64-pkg | Manage native OS packages | 
| bl64-py | Interact with system-wide Python | 
| bl64-rbac | Manage role based access service | 
| bl64-rnd | Generate random data | 
| bl64-rxtx | Transfer and Receive data over the network | 
| bl64-txt | Manipulate text files content | 
| bl64-vcs | Manage Version Control System | 
| bl64-xsv | Manipulate CSV like text files | 
Deployment
OS Compatibility
The library has been tested on the following operating systems:
- AlmaLinux8
 - Alpine3
 - CentOS7
 - CentOS8
 - CentOS9
 - Debian9
 - Debian10
 - Debian11
 - Fedora33
 - Fedora34
 - Fedora35
 - MacOS12
- Requires Bash4 (e.g. homebrew install bash)
 
 - OracleLinux7
 - OracleLinux8
 - RedHatLinux8
 - RockyLinux8
 - Ubuntu20
 - Ubuntu21
 - Ubuntu22
 
Prerequisites
- Minimum Bash version: 4
 
Installation
- 
Download the library to the project directory
 - 
Add the library loader to the target script:
1source "<PROJECT_DIR>/bashlib64.bash" 
Contributing
Help on implementing new features and maintaining the code base is welcomed.