bash-modules VS ShellCheck

Compare bash-modules vs ShellCheck and see what are their differences.

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.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
bash-modules ShellCheck
7 489
122 34,995
- -
0.0 8.7
about 2 years ago 8 days ago
Shell Haskell
GNU Lesser General Public License v3.0 only GNU General Public License v3.0 only
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

bash-modules

Posts with mentions or reviews of bash-modules. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-03-11.
  • Write Posix Shell
    10 projects | news.ycombinator.com | 11 Mar 2023
    Bash is turing-complete, so it's possible to write automated test cases in bash. Example: https://github.com/vlisivka/bash-modules/blob/master/bash-mo...
  • Shell Script Best Practices, from a decade of scripting things
    19 projects | news.ycombinator.com | 27 Oct 2022
    Template in article is awful. It's better to use this one, which is a real CLI tool: https://github.com/vlisivka/bash-modules/blob/master/bash-mo...
  • Show HN: A plain-text file format for todos and check lists
    34 projects | news.ycombinator.com | 1 Apr 2022
    IMHO, you are mixing TODO lists and task management/planning software. No, I don't know a good task manager or business process manager for command line. Instead, I created a simpler TODO list manager, called `td`[0], which supports flat TODO lists only, and use directories and command-line generators to manage todo's. `td` prints top item only, by default, leaving little room for procrastination. I'm keeping one `TODO.md` file per project instead of one large TODO file for all todo's.

    [0]: https://github.com/vlisivka/bash-modules/blob/master/bash-mo...

  • bash-modules 4.0.1
    1 project | /r/bash | 11 Feb 2022
    Documentation: http://vlisivka.github.io/bash-modules/ Project home page: https://github.com/vlisivka/bash-modules
  • Bash-Modules 4.0
    1 project | news.ycombinator.com | 4 Jul 2021
  • Bash function names can be almost anything
    4 projects | news.ycombinator.com | 4 Jul 2021
    I'm preparing to release bash-modules 4.0 [0]. Can you give me feedback, please? I'm a non-native English speaker, so I need someone to help fix spelling mistakes, at least.

    https://github.com/vlisivka/bash-modules

  • Clojure REPL vs. CLI: IDE Wars
    4 projects | news.ycombinator.com | 1 Jul 2021
    It works in my shell. :-/ It looks like you forgot to insert `false` command.

    You are pointing to the problem with -e not working in subshell/deep functions, because of POSIX. Right? It's described in bash documentation: http://www.gnu.org/software/bash/manual/html_node/The-Set-Bu...

    > I think just defining a die() function and using it after any command that must succeed is more verbose, but less error prone:

    Yep. It's the style I developed 12 years ago, when working at Bazaarvoice, when I was lead of devops team. I created the whole library for bash, to use this pattern consistently. See https://github.com/vlisivka/bash-modules#error-handling

ShellCheck

Posts with mentions or reviews of ShellCheck. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-19.
  • Ask HN: Is there a GUI for bash shell?
    2 projects | news.ycombinator.com | 19 Apr 2024
    ncurse, dialog, zenity[2]. i/o buffering may be an issue [3a,3b]

    Assuming using same account, use history command to show past commands[0a, 0b]

    'load random example' on shellcheck using own custom examples from history command.[1]

    --------

    [3a] : http://www.gnu.org/software/coreutils/manual/html_node/stdbu...

    [3b] : http://unix.stackexchange.com/questions/25372/how-to-turn-of...

    [2] : http//funprojects.blog/2021/01/25/zenity-command-line-dialogs/

    [1] : http://www.shellcheck.net/

    [0a] : http://www.tecmint.com/history-command-examples/

    [0b] : http://www.tecmint.com/remember-linux-commands/

    web based documentation: https://www.tecmint.com/linux-commands-cheat-sheet/

    commands grouped by typical usage patterns : https://www.tecmint.com/essential-linux-commands/

  • DevSecOps with AWS- IaC at scale - Building your own platform - Part 1
    8 projects | dev.to | 21 Mar 2024
    ... #************************** Terraform ************************************* ARG TERRAFORM_VERSION=1.7.3 RUN set -ex \ && curl -O https://releases.hashicorp.com/terraform/${TERRAFORM_VERSION}/terraform_${TERRAFORM_VERSION}_linux_amd64.zip && unzip terraform_${TERRAFORM_VERSION}_linux_amd64.zip -d /usr/local/bin/ RUN set -ex \ && mkdir -p $HOME/.terraform.d/plugin-cache && echo 'plugin_cache_dir = "$HOME/.terraform.d/plugin-cache"' > ~/.terraformrc #************************* Terragrunt ************************************* ARG TERRAGRUNT_VERSION=0.55.1 RUN set -ex \ && wget https://github.com/gruntwork-io/terragrunt/releases/download/v${TERRAGRUNT_VERSION}/terragrunt_linux_amd64 -q \ && mv terragrunt_linux_amd64 /usr/local/bin/terragrunt \ && chmod +x /usr/local/bin/terragrunt #*********************** Terramate **************************************** ARG TERRAMATE_VERSION=0.4.5 RUN set -ex \ && wget https://github.com/mineiros-io/terramate/releases/download/v${TERRAMATE_VERSION}/terramate_${TERRAMATE_VERSION}_linux_x86_64.tar.gz \ && tar -xzf terramate_${TERRAMATE_VERSION}_linux_x86_64.tar.gz \ && mv terramate /usr/local/bin/terramate \ && chmod +x /usr/local/bin/terramate #*********************** tfsec ******************************************** ARG TFSEC_VERSION=1.28.5 RUN set -ex \ && wget https://github.com/aquasecurity/tfsec/releases/download/v${TFSEC_VERSION}/tfsec-linux-amd64 \ && mv tfsec-linux-amd64 /usr/local/bin/tfsec \ && chmod +x /usr/local/bin/tfsec \ && terragrunt --version #**********************Terraform docs ************************************ ARG TERRRAFORM_DOCS_VERSION=0.17.0 RUN set -ex \ && curl -sSLo ./terraform-docs.tar.gz https://terraform-docs.io/dl/v${TERRRAFORM_DOCS_VERSION}/terraform-docs-v${TERRRAFORM_DOCS_VERSION}-$(uname)-amd64.tar.gz \ && tar -xzf terraform-docs.tar.gz \ && chmod +x terraform-docs \ && mv terraform-docs /usr/local/bin/terraform-docs #********************* ShellCheck ***************************************** ARG SHELLCHECK_VERSION="stable" RUN set -ex \ && wget -qO- "https://github.com/koalaman/shellcheck/releases/download/${SHELLCHECK_VERSION?}/shellcheck-${SHELLCHECK_VERSION?}.linux.x86_64.tar.xz" | tar -xJv \ && cp "shellcheck-${SHELLCHECK_VERSION}/shellcheck" /usr/bin/ \ && shellcheck --version ...
  • Ask HN: Popular open source tool originally written in Haskell?
    3 projects | news.ycombinator.com | 10 Feb 2024
    ShellCheck: https://github.com/koalaman/shellcheck
  • Google ZX – A tool for writing better scripts
    8 projects | news.ycombinator.com | 9 Feb 2024
    If I want to write better shell scripts I usually run shellcheck and adjust accordingly or if I need facilities not provided by the shell i switch to a full fledged programming language. Ans oh yes, `sh` is present almost on every BSD and Linux box for free so I consider it an important thing to at least be comfortable with.

    shellcheck: https://www.shellcheck.net/

  • How I use Nix in my Elm projects
    8 projects | dev.to | 19 Dec 2023
    When I run nix-shell at the root of the project it puts me in a Nix shell that contains, among other programs, caddy and shellcheck. Notice that in the shellHook I add the project's shell scripts to the PATH. So once I'm in the Nix shell I can, among other things:
  • Ask HN: A Bash guide for Posix programmers?
    1 project | news.ycombinator.com | 17 Dec 2023
  • Regex support to list modules in .cabal?
    1 project | /r/haskell | 4 Dec 2023
    I have also seen some projects on github like ShellCheck which first make a library, expose all the modules and then simple add that do build-depends of the final executable. Is this the recommended approach than having just one executable and adding all the modules to other-modules:?
  • Shellcheck finds bugs in your shell scripts
    11 projects | news.ycombinator.com | 23 Nov 2023
    The error checks can be pretty arcane:

       https://github.com/koalaman/shellcheck/wiki/Checks
  • Is there a syntax checker?
    2 projects | /r/groff | 24 Oct 2023
    Similar to for instance shellcheck to check the syntax of shell scripts, is there an equivalent for the set of roff commands typically used in a (Linux) man page? I'm aware that e.g. pandoc permits the conversion of an other format (e.g., org) to both roff man and roff ms.
  • Shellcheck – finds bugs in your shell scripts
    1 project | news.ycombinator.com | 6 Oct 2023

What are some alternatives?

When comparing bash-modules and ShellCheck you can also consider the following projects:

dotfiles - Bootstrap neovim/zsh/tmux environment for Ruby on Rails development

bash-language-server - A language server for Bash

mg.sh - Mitigram's shell library of reusable script snippets

shellharden - The corrective bash syntax highlighter

xit - A plain-text file format for todos and check lists

shfmt - Dockernized shfmt. This formats shell script.

murex - A smarter shell and scripting environment with advanced features designed for usability, safety and productivity (eg smarter DevOps tooling)

shfmt - A shell formatter (sh/bash/mksh)

music-explorer - A music scraper, navigator, archiver, and cataloger for people looking for new sounds.

PowerShell - PowerShell for every system!

ConsoleJournal

efm-langserver - General purpose Language Server