Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tarunkoyalwar/bninja
A Handy toolkit containing Cross-platform command line tools for bash/shell/terminal users
https://github.com/tarunkoyalwar/bninja
bash command linux
Last synced: about 1 month ago
JSON representation
A Handy toolkit containing Cross-platform command line tools for bash/shell/terminal users
- Host: GitHub
- URL: https://github.com/tarunkoyalwar/bninja
- Owner: tarunKoyalwar
- License: bsd-3-clause
- Created: 2022-07-30T11:25:28.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-02-11T21:11:08.000Z (almost 2 years ago)
- Last Synced: 2024-06-20T17:07:24.248Z (5 months ago)
- Topics: bash, command, linux
- Language: Go
- Homepage:
- Size: 26.4 KB
- Stars: 5
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# bninja
bninja is a collection of cross-platform command line tools with some extra features(**clipboard support**) and defaults to improve experience of bash/shell/terminal users.
**Everything is written in Golang hence it can run in Linux,Windows and MacOS.**
All tools are subcommands of bninja command. These tools are -
* [bninja cut](./docs/bninja_cut.md) - Similar to GNU cut but better
* [bninja diff](./docs/bninja_diff.md) - Get unique and Common lines of files
* [bninja dummy](./docs/bninja_dummy.md) - Dummy Module to pass data from input source to output
* [bninja getlen](./docs/bninja_getlen.md) - Returns length of the given string
* [bninja hcut](./docs/bninja_hcut.md) - Cut Data horizantally similar to GNU cut but horizantal
* [bninja html](./docs/bninja_html.md) - HTML Encoder/Decoder
* [bninja json](./docs/bninja_json.md) - Format and Colorize JSON
* [bninja replace](./docs/bninja_replace.md) - Match & Replace Data
* [bninja sort](./docs/bninja_sort.md) - Sort Input data in ascending/descending order
* [bninja uniq](./docs/bninja_uniq.md) - Print Unique lines
* [bninja url](./docs/bninja_url.md) - A Simple URL Encoder and DecoderThe Obvious advantage is that all these commands can read and write from clipboard & files .Other advantages include less options and default behaviour such as trim spaces from each line.
## Some Commands have extra features than there counterpart UNIX Commands.
For Example-
1. [Cut](./docs/bninja_cut.md)
Same as GNU cut but delimeter can be more than 1 characters . Skip lines that does not contain delimeter using (--skip) option.
2. [hcut](./docs/bninja_hcut.md)
Similar to GNU cut but cut data horizantally i.e cut entire document based on delimeter and print rows based on user input.
3. [diff](./docs/bninja_diff.md)
Compare two files and get unique lines that are common or belongs to a particular file.
4. [uniq](./docs/bninja_uniq.md)
Get unique lines from input . By default trims extra spaces on each line . (GNU uniq only detects duplicates only if they are adjacent)
5. [replace](./docs/bninja_replace.md)
An Alternative to **sed** but less of an eyesore. Match and replace strings (NO Syntax, uses options instead of subcommands like /s or /g) . options are similar to replace functions in go or python.
# Installation
- Make Sure you have go installed properly or [install go](https://go.dev/doc/install)
- Install Using go
```sh
go install github.com/tarunKoyalwar/bninja/cmd/bninja@latest
```If you loved this tool . Star / Watch this repo to show support and to not miss any feature updates.
# Support
If you like `bninja` and want to see it improve furthur or want me to create other interesting projects , You can buy me a coffee
[![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/B0B4CPU5V)