User:George Swan/Shell (computer)

From Citizendium
Jump to navigation Jump to search

This is a draft in User space, not yet ready to go to Citizendium's main space, and not meant to be cited. The {{subpages}} template is designed to be used within article clusters and their related pages.
It will not function on User pages.

The shell is a term for a computer's command line interpreter. The term is rarely used for command line interpreters that are not related to the UNIX operating system.

UNIX shells

Ken Thompson, the programmer who wrote the original UNIX kernel also wrote its first shell. This shell introduced the very powerful feature that allowed the shell user to redirect a program's output to a file, to redirect a program's console input from a file, or to pipe the output of one program to the input of another program's input to form a pipeline.

In 1976 Robert Mashey, of Bell Labs, wrote a new shell, with greater support for writing programs in the shell. This shell was distributed with the Programmer's Workbench UNIX, an early UNIX used for programmer's within the Bell Telephone System to develop programs for other platforms.

In 1979 Steven Bourne, of Bell Labs wrote a shell with additional features for writing programs in the shell, which Bourne called "shell procedures". The new features introduced with Bourne's shell increased support for environment variables and intercepting and dealing with interrupts. Bourne's shell was distributed with the Bell Lab's seventh official distribution of UNIX. It is generally called the "Bourne Shell", or the "Version 7 shell". Several later shells remain

Also in 1979 a team of programmers at the University of Berkeley, under the leadership of Bill Joy, introduced a new version of UNIX based on Version 6 UNIX. This version of UNIX had facilities that allowed shell users to send programs running in the foreground, to the background. Alternately programs running in the background could be brought to the foreground. Background programs could be stopped and started, by shell users, using a new shell, that was originally called the "C shell", but was later to be called the "Joy Shell".

The Joy Shell also included features for writing programs in the shell, which were not compatible with those in the Bourne shell. These programs were colloquially known as "shell scripts".

David Korn, of Bell Labs, would later write a shell compatible with the Bourne's shell that added the job control features that made the Joy shell attractive. This shell is known as the "Korn shell".

A shell known as the "Bourne again shell", or "bash", is a shell written by volunteers, to be compatible with the Bourne shell, that could be used with projects like linux. start and stop programs that were runn