FreeBSD中Telnet最大连接用户数的定制(8) tcsh,bash 拥有更强大的功能,你可以在FreeBSD 的软件包中找到。 你使用哪个shell?那还正是个问题。如果你是一个C 程序员,你可能觉得象tcsh 这 种C 类型的shell,用起来比较舒服。如果你使用Linux 或你是一个UNIX 的新手,你可能 会试一试bash。这里要指出的是每一种shell 都有它自己的特点,你可以根据你的喜好自 由地选择。Shell 的一个基本特征是文件名的自动补充功能。通常在你输入一个命令或文件 名时,你先输入几个字母,然后按TAB 键,命令或文件名会自动补上剩下的字母。例如:我 有两个文件:foobar 和foo.bar。我要删除foo.bar。所以我就输入:rm foo[TAB].[TAB]。 Shell 就会打出rm foo[BEEP].Bar。[BEEP]是铃声。它能够告诉我,因为匹配的问题shell 不能自动补充文件名。因为foobar 和foo.bar 同时以fo 开始,但它无法完成foo。一旦我 输入.,然后键入TAB,shell 就能补充完文件名。 第11 页FreeBSD 使用手册 Shell 的另外一个功能就是环境变量。环境变量是存储在shell 环境空间中的可变钥匙 对。这个空间能够被shell 的任何程序调用,而且包含了许多程序配置。这儿是一个普通环 境变量的列表: 详细说明变量 现在登陆的使用者名称。USER 以冒号分隔的目录列表以便寻找执行文件的路径。PATH DISPLAY X11 显示连接的网络名称,如果有的话。 目前用的shell 。SHELL 使用者终端的名称。用来决定终端机的能力。TERM 完成几个终端功能的终端退出代码的数据库记录。TERMCAP 操作系统的种类,如FreeBSD。OSTYPE MACHTYPE 现在系统所用的CPU。 使用者喜欢的编辑器。EDITOR 使用者喜欢的文字呼叫器。PAGER 以冒号分隔的目录以便寻找联机手册。MANPATH 在各shell 之间,设置一个环境变量稍微有点不同。例如,象tcsh 和csh 的C 风格shell, 你可以使用setenv 来设置或查看环境变量。而在象sh 和bash 的Bourne shell 下,你可以 使用set 和eXPort 来查看和设置环境变量。例如,在csh 或tcsh 下,设置或修改环境编辑 器,可以把编辑器设置成/usr/local/bin/emacs: %setenv EDITOR /usr/local/bin/emacs 在Bourne shell 下: %export EDITOR=“/usr/local/bin/emacs” 你也可以在命令列用$放在变量的前面来取得环境变量。echo $TERM 就会显示出$TERM 的设置值,因为shell 取得了$TERM 并把它传给echo 显示出来。 第12 页FreeBSD 使用手册 Shell 里有很多特殊字符代表着一些资料,我们叫做meta-characters。最常用的就是* 这个字符,它代表文件名的任何字符。这些meta-characters 会被用在文件名称的全域样式 上。举例来说,键入echo *是和ls 有同样的效果,因为shell 将所有符合*的文件传到命