Skip to Content
Navigation:

A stick figure smiling

Here's a preview from my zine, Bite Size Bash!! If you want to see more comics like this, sign up for my saturday comics newsletter or browse more comics!

Image of a comic. To read the full HTML alt text, click "read the transcript". get the zine!
read the transcript!

there are lots of Unix shells

  • dash
  • bash
  • sh
  • zsh
  • fish
  • csh
  • tcsh
  • ksh

you can find out your user’s default shell by running: $ echo $SHELL

POSIX is a standard that defines how Unix shells should work

sh, dash, bash, zsh, and ksh, all represented by little boxes with smiley faces: if your script sticks to POSIX, we’ll all run it the same way! (mostly [smiley face])

fish: I don’t care about POSIX

some shells have extra features

bash, zsh, and ksh: we have extra features that aren’t in POSIX
sh and dash: we keep it simple & just do what POSIX says

on most systems, /bin/sh only supports POSIX features

smiling stick figure with short curly hair: if your script has #!/bin/sh at the top, don’t use bash-only features in it!

some people write all their scripts to follow POSIX

smiling stick figure with straight chin length hair: I only use POSIX features
smiling stick figure with short curly hair, labelled “me”: I use lots of bash-only features!

this zine is about bash scripting

smiling stick figure with short curly hair: most things in this zine will work in any shell, but some won’t! page 15 lists some non-POSIX features