Bash Resources

*The default shell for most Linux distributions; also a language*

Readings

https://alexpetralia.com/posts/2017/6/26/learning-linux-bash-to-get-things-done
https://adtmag.com/blogs/dev-watch/2016/07/bash-salaries.aspx
https://blog.jessfraz.com/post/for-the-love-of-pipes/

Good Reference
https://arachnoid.com/linux/shell_programming.html

Huge Ridiculous List of Bash-specific Things
https://github.com/awesome-lists/awesome-bash

Huge Ridiculous List of general Terminal CLI things
https://github.com/agarrharr/awesome-cli-apps

https://www.blockloop.io/mastering-bash-and-terminal/

bashrc
https://unix.stackexchange.com/questions/129143/what-is-the-purpose-of-bashrc-and-how-does-it-work

Little Random Things
https://www.putorius.net/5-cool-command-line-tools.html

Bash on Data
https://www.datafix.com.au/BASHing/index.html

An old-school extremely simple way to store passwords. -
https://github.com/out-of-cheese-error/the-way/blob/master/README.md

Overview Materials

https://devhints.io/bash
https://learnxinyminutes.com/docs/bash/ - Learn Bash in y minutes: Very good if you're familiar with languages generally.
https://wiki.bash-hackers.org/scripting/newbie_traps
https://wiki.bash-hackers.org/scripting/obsolete

http://robertmuth.blogspot.com/2012/08/better-bash-scripting-in-15-minutes.html

https://zwischenzugs.com/2018/01/06/ten-things-i-wish-id-known-about-bash/
https://zwischenzugs.com/2018/01/21/ten-more-things-i-wish-id-known-about-bash/

Lists

https://github.com/awesome-lists/awesome-bash

Fun

https://www.putorius.net/5-cool-command-line-tools.html

dump of old stuff that I'm not going through just yet

General guides


Bash General Guide
Advanced Bash Guide
Another good walkthrough of Bash

Basic, but specific, commands and functions


Brackets, Parentheses and Curly Braces, oh my

On "conditionals" in Bash (how to use if statements)
Conditional Expressions
http://mywiki.wooledge.org/BashFAQ/031

"For" loops in Bash
https://www.cyberciti.biz/faq/bash-for-loop/

For, While, and Until
https://linuxnewbieguide.org/for-while-and-until-loops/

The "DATE" command*
https://www.cyberciti.biz/tips/linux-unix-get-yesterdays-tomorrows-date.html
*Note, one bit that they don't talk about here is %s, which is the date as number of seconds since Jan 1, 1970. I find this really cool and useful, makes it easy to calculate time differences

SED (which is really another language, but heavily used with bash)

https://linuxconfig.org/learning-linux-commands-sed

AWK

(which is also really another language, but also heavily used with bash)
https://www.tutorialspoint.com/awk/awk_basic_examples.htm
https://earthly.dev/blog/awk-examples/
https://news.ycombinator.com/item?id=28707463

Lists of quirks and cool things that other people have put together


(I've tried to do this roughly in order from "useful" to "obscure")
https://zwischenzugs.com/2018/01/06/ten-things-i-wish-id-known-about-bash/
https://stackoverflow.com/questions/965663/useful-bash-code-snippets
https://www.lopezferrando.com/30-interesting-shell-commands/
https://github.com/alexanderepstein/Bash-Snippets
http://www.pixelbeat.org/programming/shell_script_mistakes.html
https://www.reddit.com/r/commandline/comments/3wiozw/what_is_your_favorite_commandline_cheatsheet/
http://www.etalabs.net/sh_tricks.html

untested

Bash History
https://www.reddit.com/r/commandline/comments/jzcoyh/super_safe_bash_history/

Math

https://unix.stackexchange.com/questions/40786/how-to-do-integer-float-calculations-in-bash-or-other-languages-frameworks



Backlinks: knowledgebase:Bash Code Examples knowledgebase:COMMAND LINE knowledgebase:Programming - Small Tools knowledgebase:Terminal Apps