InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now. Learn more →
Top 7 Python bash-scripting Projects
-
jc
CLI tool and python library that converts the output of popular command-line tools, file-types, and common strings to JSON, YAML, or Dictionaries. This allows piping of output to tools like jq and simplifying automation scripts.
I guess I don't see those as big downsides because I don't think people usually want binary data or quoted strings back from a CLI command, nor do they want column oriented output, nor "user friendly" tables.
Answering --help with JSON is a good example, how bad is it really if the response is JSON? Well, using less works fine still and you can still grep if you want simple substring search. Wanting a section is probably more common, so maybe you'd "grep" for a subcommand with `jq .subcommand` or an option with `jq .subcommand.option`. Tables and tab-or-space delimited output overflow char limits, force the command-generator to figure out character wrapping, and so on. Now you need a library to generate CLI help properly, but if you're going to have a library why not just spit JSON and decouple completely from display details.
Structured output by default just makes sense for practically everything except `cat`. And while your markdown files or csv files might have quoted strings, looking at the raw files isn't something people really want from shells or editors.. they want something "rendered" in one way or another, for example with syntax highlighting.
Basically in 2025 neither humans nor machines benefit much from unstructured raw output. Almost any CLI that does this needs to be paired with a parser (like https://github.com/kellyjonbrazil/jc) and/or a renderer (like https://github.com/charmbracelet/glow). If no such pairing is available then it pushes many people to separately reinvent parsers badly. JSON's not perfect but (non-minified) it's human-readable enough to address the basic issues here without jumping all the way towards binary or (shudder) HTML
-
InfluxDB
InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
-
-
-
I've used this in the past to force bash to print every command it runs (using the -x flag) in the Actions workflow. This can be very helpful for debugging.
https://github.com/jstrieb/just.sh/blob/2da1e2a3bfb51d583be0...
-
network_performance_monitor
Network Performance Monitor - a portable tool for troubleshooting performance issues with home networks
-
-
dotfiles
The configuration files (dotfiles) that I use on my computer (linux). It includes Vim, Zsh (by LagrangianLad)
-
Stream
Stream - Scalable APIs for Chat, Feeds, Moderation, & Video. Stream helps developers build engaging apps that scale to millions with performant and flexible Chat, Feeds, Moderation, and Video APIs and SDKs powered by a global edge network and enterprise-grade infrastructure.
Python bash-scripting discussion
Python bash-scripting related posts
-
PaSh – Parallelized Shell Programs
-
PaSh – Parallelized Shell Programs
-
Technique significantly boosts the speeds of programs that run in the Unix shell
-
Network Performance Monitor project update
-
How to monitor background data usage?
-
Force all locally generated traffic out one interface
-
yf is a CLI tool that allows for quick and easy access to Yahoo! Finance market data
- A note from our sponsor - InfluxDB www.influxdata.com | 25 Dec 2025
Index
What are some of the best open-source bash-scripting projects in Python? This list will help you:
| # | Project | Stars |
|---|---|---|
| 1 | jc | 8,485 |
| 2 | Rotten-Scripts | 1,532 |
| 3 | jello | 526 |
| 4 | just.sh | 238 |
| 5 | network_performance_monitor | 83 |
| 6 | yf | 20 |
| 7 | dotfiles | 2 |