_               _     
       | |__   __ _ ___| |__  
       | '_ \ / _` / __| '_ \ 
       | |_) | (_| \__ \ | | |
       |_.__/ \__,_|___/_| |_|
                              
       
       GNU Bash is a command line shell for interactive use with GNU
       readline, as well as shell scripting. It's commonly used as the
       default login shell on GNU/Linux systems.
       
       Here's what people say about bash (and sh):
       
           It's too big and too slow.
                                             \~ bash(1)
       
           nobody really knows what the Bourne shell's grammar is.  Even
           examination of the source code is little help.
                                             \~ Tom Duff's rc(1) paper
       
           This style guide is more a recognition of its use rather than
           a suggestion that it be used for widespread deployment.
                                             \~ Google's bash style guide
       
           The Bourne shell  language is one of, perhaps  the, least
           internally consistent programming language still widely used
           today.
                                             \~ user zwol on stack overflow
       
           $ printf "$(cat log.log | grep -e "$(date +%F\"\")" | grep -e er
           ror | sed -E "s/^ F.*$\n/${eth}|en[o,p]/g" | tr [:space:] '\n' |
            sort | uniq -d) >> fuckshit.piss 
           >
           >^C^C^C^C
           >
           >
                                             \~ someone somewhere right now
       
       + + + + +
       
       I end up writing a lot of bash. It's potent enough for scripting
       silly stuff like simple site generators, administration tools, curl
       wrappers... Throw in fzf(1) and your scripts get a decent interface
       too. It's fairly featured so scripts end up mostly self-contained,
       with little reliance on coreutils of various systems. Some patterns
       are fun to use too. Here, in sdf's gopherspace, anyone can use it
       for CGI scripts.
       
       There's no one real authorative source on how to write bash. This
       page will list some of the resources which helped me pick up and
       use bash, and maybe my write-ups on it's features if I ever dare
       commit some.
       
       + + + + +
       
 (HTM) The Linux Command Line by William Shotts
         Not really a bash book, but it does walk you through bash scripting
         and various coreutils. It's how I learned the basics, so I thought
         I should include it.
       
 (TXT) bash help command
         It's understated how handy the builtin bash help is. Look at
         this stuff, these are great cheat sheets!
       
 (HTM) Bash Reference Manual
         The bash manpage is (in)famously unreadable. Use this manual
         instead. Try the parameter expansion chapter for good shit.
       
 (HTM) Google Shell Style Guide
         Style guides are used for keeping code readable and maintainable
         within communities, but also for noting best practices. Plenty
         of opinionated decisions in the doc, but also generally good
         ideas like indenting long pipelines.
       
 (HTM) pure bash bible
         Collection of fancy bash tricks to replace external calls to
         coreutils and such. Generally, the less external calls, the more
         efficient the script. But bash's so slow anyway, it's more of a
         principle/portability/fun thing.
       
 (HTM) password-store.sh
         They don't want you to know, but the famous pass(1) password
         manager is actually just a bash script, as are plenty of good
         CLI programs. While it's not exactly the code quality that makes
         pass amazing, this is a bash program people over the world trust
         their secrets with every day. Certainly worth inspecting.
       
 (HTM) shellcheck
         Shellcheck is a linting tool for shell scripts - not just bash,
         but works just as well for it. Basically, it finds common errors
         and bad style, and suggests corrections, which you may learn from
         (or contest...). It's good at hunting bashisms in POSIX shell
         scripts too. You can call it on files from the command line, or
         integrate it into your editor. I use it inside kakoune.
       
 (HTM) Ghost in the Shell by vermaden
         Series of articles on general shell usage, covers common UNIX
         magics as well as plain neat scripting and interactive use tricks.
       
       + + + + +
       
 (TXT) Understanding ${0}
         My notes on what's $0 and how to use it.
       
       + + + + +
       
       More to come when I bother.