on the Bourne shell sources while working at Bell Labs Public domain Korn shell (pdksh) MirBSD Korn shell (mksh): a descendant of the OpenBSD /bin/ksh and pdksh, developed as part of MirOS BSD Z shell (zsh): a relatively modern shell that is backward compatible with bash. It's the default shell in Kali Linux since 2020.4 and macOS since 10.15 Catalina. The POSIX standard specifies its standard shell as a strict subset of the Korn shell, an enhanced version of the Bourne shell. From a user's perspective the Bourne shell was immediately recognized when active by its characteristic default command line prompt character, the dollar sign (). C shell The C shell, csh, was modeled on the C programming language, including the control structures and the expression grammar. It was written by Bill Joy as a graduate student at University of California, Berkeley, and was widely distributed with BSD Unix. The C shell also introduced many features for interactive work, including the history and editing mechanisms, aliases, directory stacks, tilde notation, cdpath, job control and path hashing. On many systems, csh may be a symbolic link or hard link to TENEX C shell (tcsh), an improved version of Joy's original version. Although the interactive features of csh have been copied to most other shells, the language structure has not been widely copied. The only work-alike is Hamilton C shell, written by Nicole Hamilton, first distributed on OS/2 in 1988 and on Windows since 1992. Configuration files Shells read configuration files in various circumstances. These files usually contain commands for the shell and are executed when loaded; they are usually used to set important variables used to find executables, like $PATH, and others that control the behavior and appearance of the shell. The table in this section shows the configuration files for popular shells. Explanation: blank means a file is not read by a shell at all. "yes" means a file is always read by a shell upon startup. "login" means a file is read if the shell is a login shell. "n/login" means a file is read if the shell is not a login shell. "int." means a file is read if the shell is interactive. Other shells Variations on the Unix shell concept that don't derive from Bourne shell or C shell include the following: es – A functional programming rc-compatible shell written in the mid-1990s. Friendly interactive shell (fish)