D31
Linux(以及Unix或类Unix)下的Shell有很多种,根据环境和编程需求的不同有时需要使用不同的Shell。本章了解另外两种常用的Shell:C Shell和Korn Shell。
1. csh简介
C Shell(简称csh)是一个通常运行在文本窗口并允许用户输入命令的命令处理程序。也可以从脚本文件中读取命令。
与其他Linux Shell类似,支持文件名统筹、管道、here documents、命令替换、变量和用于条件测试和循环的控制结构。
csh与其他Shell的不同之处在于它的交互性特性和总体风格:更像C语言,可读性更好。
csh和tcsh:
在很多系统中(如Mac OS X和RedHat Linux),csh实际是tcsh,tcsh是csh的改进版。这些系统中csh和tcsh都链接到包含tcsh可执行程序的同一个文件,所以调用的是同一个C Shell改进版。
在Debian、Ubuntu及它们的衍生版本中,csh和tcsh是两个不同的包。
tcsh添加了文件名和命令不全功能,以及从Tenex系统借鉴来的命令行编辑概念(t的由来)。tcsh兼容csh。
2. csh的特性