Life & fun · alternatives · 2026
24 alternatives to shfmt – gofmt for shell scripts
A shell parser, formatter, and interpreter with bash and zsh support; includes shfmt - mvdan/sh
Below are 24 products that do a similar job, ranked by how close each is in meaning and then by launch-day votes. Prices are shown for the 1 we have checked on their own sites, 1 of them free or with a free tier. shfmt – gofmt for shell scripts launched in 2016; newer entries below may have overtaken it.
- 1

A shell parser, formatter, and interpreter with bash and zsh support; includes shfmt - mvdan/sh
2016 · github.com · its alternatives →
- 2AC
2018 · npmjs.com · its alternatives →
- 3
dif.sh▲373Markdown feature flags your coding agent installs for you
Aug 2026 · dif.sh · its alternatives →
- 4

`makedown` allows you to organise your shell scripts in one or several markdown files, by mix and matching different scripting languages for various commands and needs. zsh/bash/sh, python, javascript or anything else available on your system. Handy for replacing one-line-based package.json scripts or shell-based Makefiles. One can also write documentation and explanations to various commands in the same `.md` file. Most editors highlight correctly most languages in the markdown code blocks, even when you use several scripting languages. Here is a demo .md file…
2024 · github.com · its alternatives →
- 5

Justfiles are like Makefiles, except Just is a command runner, whereas Make is a build system. As I understand it, Just was built to be a less arcane version of Make for collecting commands common to a code repository. When I first learned about Just, I realized that parsing arguments and running commands is exactly what shell scripts do, and there probably isn't much Just does that sh doesn't. This project proves that hypothesis by compiling Justfiles to portable (POSIX-compatible) shell scripts. just.sh is particularly useful for running Justfiles in esoteric environments where Just may…
2023 · github.com · its alternatives →
- 6
Lisp Shell▲120A fully-featured lisp/scheme shell written in Racket. - DexterLagan/lsh
2018 · github.com · its alternatives →
- 7

Real-time CLI flag explainer for fish shell. Contribute to ibehnam/shellock development by creating an account on GitHub.
Jan 2026 · github.com · its alternatives →
- 8

Use gpt-do to have GPT-3 write all your bash commands for you.
2022 · musings.yasyf.com · its alternatives →
- 9

- 10

I've built a tool called sol (like "soul") that helps you inspect and format complex shell one-liners. Features: - Choose which transformations you want (break on pipe, args, redirect, whatever) - "Peeks" into stringified commands (think xargs, parallel) and formats those, too - Auto-breaks at a given width (e.g., 80 characters) - Shows you non-standard aliases, functions, files, etc. that you might not have in your shell environment - Breaks up long jq lines with jqfmt because—let's be honest—they're getting out of hand As a security researcher and tool developer, I often encounter (or…
2024 · github.com · its alternatives →
- 11

cod is a completion daemon for bash/fish/zsh. Contribute to dim-an/cod development by creating an account on GitHub.
2020 · github.com · its alternatives →
- 12

Redstart is a lightweight Lisp interpreter written in C++ with a focus on shell scripting. It lets you combine the expressive power of Lisp with the practicality of the Unix shell: you can run commands, capture output, pipe between processes, and still use Lisp syntax for logic and structure. Think of it as writing your shell scripts in Lisp instead of Bash.
2025 · github.com · its alternatives →
- 13

Lockdown your linux install. The simple zero config linux hardening script - dolegi/lockdown.sh
2020 · github.com · its alternatives →
- 14

Unit testing framework for developing cross-platform Bash unit tests - bach-sh/bach
2020 · github.com · its alternatives →
- 15

An attempt at saner Bash defaults. Contribute to mrzool/bash-sensible development by creating an account on GitHub.
2016 · github.com · its alternatives →
- 16

I originally was just messing with pi-autoresearch. Gave it a sample task to build the most portable coding agent. First cut was 6 KB of shell. Great for one-shots, unusable interactively. I was shocked it actually worked. Started building up -- adding features — but with a self-imposed rule: no new dependencies, and sub 500 LOC. This thing had to be truly portable. Just sh, curl, awk. System primitives only. Which means I did some genuinely disgusting things in awk, including JSON parsing and the OpenAI Responses tool loop with reasoning items carried across turns. It's now ~400 lines. In…
Apr 2026 · pu.dev · its alternatives →
- 17

zsh configuration. Contribute to SixArm/zsh-config development by creating an account on GitHub.
2019 · github.com · its alternatives →
- 18CS
The pattern of downloading and executing installation scripts without verifying them has bothered me for a while. I started messing around with a way to verify the checksum of scripts before I execute them. I've found it a really useful tool for installing things like Rust or Deno. It's written entirely as a shell script, and it's easy to read and understand what's happening. I hope it may be useful to someone else!
2022 · checksum.sh · its alternatives →
- 19
now.sh▲83Pipeable bash script that prints current time while waiting for an input from stdin - apankrat/now.sh
2013 · github.com · its alternatives →
- 20SS
2015 · maxcdn.github.io · its alternatives →
- 21

Unix shell script tactics - best practices style guide - unix-shell-script-tactics/README.md at main · SixArm/unix-shell-script-tactics
2022 · github.com · its alternatives →
- 22

A powerful new shell that uses the janet programming language for both the implementation and repl. - andrewchambers/janetsh
2019 · github.com · its alternatives →
- 23GA
I built GRSH because I wanted a modern, memory-safe shell that feels native to FreeBSD but works seamlessly on macOS. While there are many shells out there, GRSH is my take on a minimal, fast, and secure command interpreter written entirely in Rust. It's designed for users who want the safety guarantees of Rust without the overhead of more bloated alternatives. I'm currently working on the official FreeBSD port. I’d love to get feedback on the shell's behavior and performance from the community. Github: https://github.com/antoniomalara301289/grsh
Jan 2026 · grimreaper.icu · its alternatives →
- 24HA
In the deep mists of time (circa 2012), I was playing with the Go standard library, and saw how easy it was to stand up a webserver that let you navigate a remote file system, and I thought it was pretty neat. I took a look at my shell history and a frequent pattern of commands was "cd, ls, cd, ls, ...". And I thought "I love my keyboard, but you know, point and click might be nice in this context." And then I thought, "It'd be even cooler if you could run commands there." Skip forward several years, a few earlier implementations, a name change, and now there's Hucksh(ell), a bash-like shell…
2023 · its alternatives →
Also compare
- A shell/bash parser and formatter in Go alternatives
- A complete Bash parser in JavaScript transpiled from Go alternatives
- dif.sh alternatives
- Makedown – A Markdown powered Makefile alternative alternatives
- Just.sh – compiler that turns Justfiles into portable shell scripts alternatives
- Lisp Shell alternatives
Ranked by how close each launch is in meaning, then by votes. Prices were read from each product’s own site when checked and can change. Refine with your own description →