39 lines
1.4 KiB
Plaintext
39 lines
1.4 KiB
Plaintext
ShellCheck - A shell script static analysis tool
|
|
http://www.vidarholen.net/contents/shellcheck
|
|
|
|
Copyright 2012, Vidar 'koala_man' Holen
|
|
Licensed under the GNU Affero General Public License, v3
|
|
|
|
The goals of ShellCheck are:
|
|
|
|
- To point out and clarify typical beginner's syntax issues,
|
|
that causes a shell to give cryptic error messages.
|
|
|
|
- To point out and clarify typical intermediate level semantic problems,
|
|
that causes a shell to behave strangely and counter-intuitively.
|
|
|
|
- To point out subtle caveats, corner cases and pitfalls, that may cause an
|
|
advanced user's otherwise working script to fail under future circumstances.
|
|
|
|
ShellCheck is written in Haskell, and requires GHC, Parsec3 and Text.Regex.
|
|
To build the JSON interface and run the unit tests, it also requires QuickCheck2 and JSON.
|
|
|
|
On Fedora, these can be installed with:
|
|
yum install cabal-install ghc ghc-parsec-devel ghc-QuickCheck-devel ghc-json-devel ghc-regex-compat-devel
|
|
|
|
On Ubuntu and similar, use:
|
|
apt-get install ghc libghc-parsec3-dev libghc-json-dev libghc-regex-compat-dev libghc-quickcheck2-dev cabal-install
|
|
|
|
For older releases, you may have to use:
|
|
apt-get install ghc6 libghc6-parsec3-dev libghc6-quickcheck2-dev libghc6-json-dev libghc-regex-compat-dev cabal-install
|
|
|
|
Executables can be built with cabal. Tests currently still rely on a Makefile.
|
|
|
|
Install:
|
|
cabal install
|
|
|
|
which shellcheck
|
|
~/.cabal/bin/shellcheck
|
|
|
|
Happy ShellChecking!
|