Shells

Overview

A shell is typically a CLI program providing relatively broad and direct access to the operating system on which it runs. In fact, the term shell refers to how it is a relatively thin layer around an OS. It interacts with a user through a controlling TTY.

The most widely distributed and influential of the early Unix shells was the Bourne shell sh. Traditionally its path in the Unix file system hierarchy is /bin/sh. On many systems, especially modern ones, /bin/sh is instead a symbolic or hard link to a more modern (but compatible) shell.

Jobs

Unix shells use a shell-specific abstraction of a job to represent the processes that are created as a result of evaluating a single command line. A job essentially corresponds one-to-one to a process group.

Powered by Forestry.md