| "Sensible" Input/Output redirection | ✔ | ✔ | ✘ | ✔ | ✔ | ✔ | ✔ | ✘ |
| Aliases | ✔ | ✘ | ✔ | ✘ | ✔ | ✔ | ✘ | ✔ |
| Builtin artithmetic evaluation | ✔ | ✘ | ✔ | ✘ | ✔ | ✔ | ✘ | ✔ |
| Can avoid user startup files | ✔ | ✔ | ✘ | ✔ | ✘ | ✔ | ✘ | ✔ |
| Can cope with large argument lists | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✘ |
| Can follow symbolic links invisibly | ✔ | ✘ | ✔ | ✘ | ✔ | ✔ | ✘ | ✘ |
| Can specify startup file | ✔ | ✘ | ✘ | ✘ | ✔ | ✘ | ✘ | ✘ |
| Checks Mailbox | ✔ | * | ✔ | * | ✔ | ✔ | ✘ | ✔ |
| Co Processes | ✘ | ✘ | ✘ | ✘ | ✔ | ✔ | ✘ | ✘ |
| Command history | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✘ | ✔ |
| Command line editing | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✘ | ✘ |
| Custom Prompt (easily) | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✘ | ✘ |
| Directory stack | ✔ | * | ✔ | * | ✔ | ✔ | ✘ | ✔ |
| Emacs Command line editing | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✘ | ✘ |
| Exceptions | ✘ | ✔ | ✘ | ✘ | ✘ | ✘ | ✘ | ✘ |
| File no clobber ability | ✔ | * | ✔ | ✘ | ✔ | ✔ | ✘ | ✔ |
| Filename completion | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✘ | ✔ |
| Freely Available | ✔ | ✔ | ✔ | ✔ | * | ✔ | ✘ | ✘ |
| Full signal trap handling | ✔ | ✔ | ✘ | ✔ | ✔ | ✔ | ✔ | ✘ |
| Fully programmable Completion | ✘ | ✘ | ✔ | ✘ | ✘ | ✔ | ✘ | ✘ |
| Has anonymous functions | ✘ | ✔ | ✘ | ✔ | ✘ | ✘ | ✘ | ✘ |
| Has non-interactive startup file | * | ✘ | ✔ | ✘ | * | ✔ | ✘ | ✔ |
| Has non-login startup file | ✔ | ✘ | ✔ | ✘ | * | ✔ | ✘ | ✔ |
| History completion | ✔ | ✔ | ✔ | ✔ | ✘ | ✔ | ✘ | ✘ |
| Hostname completion | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✘ | ✔ |
| Job control | ✔ | ✘ | ✔ | ✘ | ✔ | ✔ | ✘ | ✔ |
| Lexically scoped variables | ✘ | ✔ | ✘ | ✘ | ✘ | ✘ | ✘ | ✘ |
| List Variables | ✘ | ✔ | ✔ | ✔ | ✔ | ✔ | ✘ | ✔ |
| Local variables | ✔ | ✔ | ✘ | ✔ | ✔ | ✔ | ✘ | ✘ |
| Login/Logout watching | ✘ | * | ✔ | * | ✘ | ✔ | ✘ | ✘ |
| Low level command redefinition | ✘ | ✔ | ✘ | ✘ | ✘ | ✘ | ✘ | ✘ |
| Mh Mailbox completion | * | ✘ | * | ✘ | ✘ | * | ✘ | ✘ |
| Periodic command execution | ✘ | ✘ | ✔ | ✘ | ✘ | ✔ | ✘ | ✘ |
| Process Substitution | ✔ | ✔ | ✘ | ✔ | ✘ | ✔ | ✘ | ✘ |
| Rebindable Command line editing | ✔ | ✔ | ✔ | ✔ | ✘ | ✔ | ✘ | ✘ |
| Shell functions | ✔ | ✔ | ✘ | ✔ | ✔ | ✔ | ✔ | ✘ |
| Spelling Correction | ✘ | ✘ | ✔ | ✘ | ✘ | ✔ | ✘ | ✘ |
| Sun Keyboard Hack | ✘ | ✘ | ✘ | ✘ | ✘ | ✔ | ✘ | ✘ |
| Tty Sanity Checking | ✘ | ✘ | ✔ | ✘ | ✘ | ✔ | ✘ | ✘ |
| Underlying Syntax | sh | rc | csh | rc | sh | sh | sh | csh |
| User name look up | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✘ | ✔ |
| Username completion | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✘ | ✔ |
| Vi Command line editing | ✔ | ✔ | ± | ✔ | ✔ | ✔ | ✘ | ✘ |