tcsh

TENEX C Shell

Screenshot of a sample tcsh session
Developer(s) Ken Greer, Paul Placeway, Christos Zoulas, et al.
Stable release 6.18.01 / February 13, 2012
Written in C
Operating system Cross-platform
Type Unix shell
License BSD License
Website http://www.tcsh.org/

tcsh (/ˌtˈsʃɛl/ "tee-cee-shell", /ˈtʃɛl/ "tee-shell", or as an acronym "tee cee ess aitch") is a Unix shell based on and compatible with the C shell (csh). It is essentially the C shell with programmable command-line completion, command-line editing, and a few other features.

History

The “t” in tcsh comes from the “T” in TENEX, an operating system which inspired Ken Greer at Carnegie Mellon University, the author of tcsh, with its command-completion feature.[1] Greer began working on his code to implement Tenex-style file name completion in September 1975, finally merging it into the C shell in December 1981.[2] Mike Ellis at Fairchild A.I. Labs added command completion in September 1983.[2] On October 3, 1983, Greer posted source to the net.sources newsgroup.[2]

Paul Placeway from Ohio State University continued work on it in the 1980s, and since then it has been maintained by numerous people. Wilfredo Sanchez, the former lead engineer of Mac OS X, worked on tcsh in the early 1990s at MIT.

Significant features

#Alias the cd command so that when you change directories, the contents are immediately displayed.
alias cd 'cd \!* && ls'
if ( "$input" =~ [0-9]* ) then
  echo "the input starts with an integer"
else
  echo "the input does NOT start with an integer"
endif

Deployment

Early versions of Mac OS X shipped with tcsh as the default shell, but the default for new accounts is bash as of 10.3. (tcsh is still provided, and upgrading the OS does not change the shell of any existing accounts). The tcsh is the default root shell of FreeBSD (the default user shell is POSIX-based)[3] and its descendants like DragonFly BSD and DesktopBSD.

See also

References

  1. "The T in tcsh". Archived from the original on 14 April 2012. Retrieved 31 October 2013.
  2. 2.0 2.1 2.2 Ken Greer (Oct 3, 1983). "C shell with command and filename recognition/completion". Newsgroup: net.sources. Retrieved Dec 29, 2010.
  3. Michael Urban; Brian Tiemann (2002). Sams teach yourself FreeBSD in 24 hours. Sams Publishing. p. 56. ISBN 978-0-672-32424-6.

External links