≡ Menu

What is UNIX / Linux C Shell?

What is C shell under UNIX / Linux operating systems?

C Shell is a shell developed by Bill Joy at the University of California at Berkeley.

The C Shell syntax resembles that of the C programming language (hence name C shell).

It has powerful interactive features like command history and file name completion.

It is default shell under FreeBSD and a few other UNIX like operating systems.

It is used primarily for interactive terminal use. For e.g. login and write program or update system configuration.

It is less frequently used for scripting and operating system control. /bin/sh is mostly used to write shell scripts.

C Shell Features

  1. Command history - Yes
  2. Line editing - No
  3. File name completion - Yes
  4. alias command - Yes
  5. Restricted shells - No
  6. Job control - Yes


tcsh is an enhanced but completely compatible version of the Berkeley UNIX C shell, csh. It is a command language interpreter usable both as an interactive login shell and a shell script command processor. It includes the following features:

  1. A command-line editor : Yes
  2. Programmable word completion : Yes
  3. Spelling correction : Yes
  4. History mechanism : Yes
  5. Job control : Yes