Ask HN: What to use instead of Bash / Sh

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • shelljs

    :shell: Portable Unix shell commands for Node.js

    However, you can also get cool packages like this to use instead: https://github.com/shelljs/shelljs

  • ngs

    Next Generation Shell (NGS)

    Next Generation Shell was born exactly out of the pain of using bash and Python. I'm the author and I felt the same way.

    > shelling out when needed is not pleasant,

    Handled properly because the language was built ground up for Ops tasks. There is even a syntax for "run a command and parse the output". Rationale and examples - https://ngs-lang.org/doc/latest/man/ngswhy.1.html

    Currently NGS supports Linux and MacOS.

    > smallish binary

    Unfortunately there is no static build yet so can't check this checkbox

    * Next Generation Shell - https://github.com/ngs-lang/ngs

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

  • rust-script

    Run Rust files and expressions as scripts without any setup or compilation step.

    This won’t work for many people who don’t know the language or its ecosystem, but I’ve started doing my ad-hoc scripting in Rust using rust-script [0]. I’ve got a template with lots of boilerplate for everything I might need and I just copy it and delete the parts I don’t want. Having argument parsing, dotenv init, toml configuration and such ready to go with just a few tweaks, simple user prompting with dialoguer [1] and easy delegation to other tools with cmd_lib [2] means I can often write the tool I’m envisioning in just a couple of minutes.

    [0] https://rust-script.org/

  • nix-script

    write scripts in compiled languages that run in the nix ecosystem, with no separate build step

    https://github.com/BrianHicks/nix-script

    This was on HN the other day. Nix allows you to crunchbang a `nix-shell -p` kind of expression.

  • Nim

    Nim is a statically typed compiled systems programming language. It combines successful concepts from mature languages like Python, Ada and Modula. Its design focuses on efficiency, expressiveness, and elegance (in that order of priority).

    Without knowing what you're trying, I'm often using nim (https://nim-lang.org/) when I want more complexity than a basic bash script, cross-compiled binaries _and_ way smaller binaries than go. It's much like python, easy to pick up, and promising. But not as mature as python, obviously. Go is great, but the binaries are big... not a problem if you've got great bandwidth...

  • deno

    A modern runtime for JavaScript and TypeScript.

    As a devops engineer who also writes a lot of code, I started using Deno (https://deno.land) since I can write my code in JavaScript and TypeScript. I can also natively use wasm, and have an internal repo for hosting commonly used functions since Deno loads files using url imports.

    Can recommend!

  • elvish

    Powerful scripting language & Versatile interactive shell

    I recently changed my shell to elvish because of the data structures and extendability. It has a lot of sane defaults that make it very appealing to me. https://elv.sh/

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts