Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/xsc/bashing
Smashing Bash into Pieces
https://github.com/xsc/bashing
Last synced: about 1 month ago
JSON representation
Smashing Bash into Pieces
- Host: GitHub
- URL: https://github.com/xsc/bashing
- Owner: xsc
- License: mit
- Created: 2013-05-31T15:07:44.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2020-02-13T13:42:24.000Z (over 4 years ago)
- Last Synced: 2024-04-13T20:16:08.872Z (5 months ago)
- Language: Shell
- Homepage:
- Size: 78.1 KB
- Stars: 75
- Watchers: 4
- Forks: 9
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# bashing
__bashing__ is a small tool that let's you create single-file [Bash](http://www.gnu.org/software/bash/)
tools in a multi-file way.Current stable Version: __0.2.2__
## Setup
### Dependencies
bashing needs the GNU variant of `sed` to function properly. If you're on MacOS
you can use e.g. Homebrew to install the package `gnu-sed`.### Installation
```bash
mkdir -p ~/.bin
curl -ko ~/.bin/bashing https://raw.github.com/xsc/bashing/stable/bin/bashing
chmod +x ~/.bin/bashing
```Make sure `~/.bin` is on your `$PATH`, e.g. by adding `export PATH="$PATH:~/.bin"` to your
`.bashrc`.## Usage
Have a look at the [wiki](https://github.com/xsc/bashing/wiki) and the
[Quickstart Tutorial](https://github.com/xsc/bashing/wiki/Quickstart-Tutorial). And if you want to examine
a full-fledged Bashing project, why not [Bashing itself](https://github.com/xsc/bashing/tree/master/src)?```bash
$ bashing new greet
Initializing ./greet ...
Successfully initialized './greet'.
$ cd greet$ bashing new.task hi
Created Task 'hi'
$ bashing run hi
Hello from Task 'hi'
$ bashing uberbash
Creating /git/public/shell/greet/target/greet-0.1.0-SNAPSHOT.sh ...
Uberbash created successfully.$ ./target/greet-0.1.0-SNAPSHOT.sh
Usage: ./target/greet-0.1.0-SNAPSHOT.sh [ ...]hello : (no help available)
help : display this help message
hi : (no help available)
version : display version$ ./target/greet-0.1.0-SNAPSHOT.sh hi
Hello from Task 'hi'$ ./target/greet-0.1.0-SNAPSHOT.sh version
greet 0.1.0-SNAPSHOT (bash 4.2.25(1)-release)$ bashing install
Creating /git/public/shell/greet/target/greet-0.1.0-SNAPSHOT.sh ...
Uberbash created successfully.
Deploying to /home/yannick/.bin/greet ...
Deployed successfully.$ greet version
greet 0.1.0-SNAPSHOT (bash 4.2.25(1)-release)
```## Bashing Bashing
To build bashing, check out this repository and run:
```
$ ./bin/bashing uberbash
Creating /git/public/bashing/target/bashing-0.1.0-SNAPSHOT.sh ...
Uberbash created successfully.
```This will create a standalone bashing script using bashing itself!
## License
Copyright © 2013-2015 Yannick Scherer
Bashing is distributed under the MIT License.