用途调用 C shell。 语法csh [ -v | -V ] [ -x | -X ] [ -e ] [ -f ] [ -i ] [ -n ] [ -c String | -s | -t ] [ -b ] [ File [ Parameter ] ] 描述C shell 是一个交互式命令解释器和一种命令编程语言,采用的语法类似于 C 编程语言。shell 是交互式地从终端键盘或者是从一个文件来执行命令的。 这个 csh 命令调用了 C shell。 当调用 csh 命令时就会执行,这是通过查找根目录和执行命令从 .cshrc 文件(用来存储用户化的用户信息)中,执行的条件是命令存在。如果 csh 命令作为一个登录 shell 运行,就会从 .cshrc 和 .login 文件中执行命令。 当 shell 处理完标志参数后,如果 -i、-c、-s和 -t 标志都未被指定,并且 File [Parameter] 被指定,那么 shell 就会执行脚本文件,此文件指定于 File [Parameter],包含了任何指定的参数。指定的脚本文件必须拥有读取权限;shell 忽略了 任何 setuid 和 setgid 设置。 注意: 不应指定一个脚本文件如果采用的 csh 命令含有 -c 或 -s 标志。 如果指定一个脚本文件,这个命令打开文件和保存脚本文件,可能的再置命名是换通过 $0 (美元符号,0)。脚本的执行是通过 csh。保持参数初始化 argv 变量。 注意:- 如果 C shell 已经运行,.cshrc 文件可被再次读取通过输入 源 路径名,其中路径名参数是一个路径,此路径通向 .cshrc 文件。
- 为避免远程操作出现问题, .cshrc 文件不应包含任何功能,这些功能返回输出,如果它们没有测试 $prompt 变量,此变量说明 shell 是交互式的。否则,每当一个远程系统使用 exec 命令在本地系统进行命令发送,命令和 shell 均被执行。示例, exec csh rcp -t 文件名执行 .cshrc 文件和处理返回的输出作为所期望的响应。一个 if 句子可用来检查 $prompt 变量。
标志如果最初的 shell 的参数是一个 -(负号),此 shell 就是一个登录 shell。C shell 标志被解释如下: -b | 强迫选项处理中断,会引起任何增进 shell 参数被处理为无选项参数。这个标志可用来传送选项到一个 shell 脚本,而不会引起混淆和可能的欺骗。此 shell 不能运行真实和有效用户和组标识与这个标志不同的脚本。 | -c | 从以下单个自变量中读取命令,此参数必须出现。 任一剩余的参数放在 argv 变量中。 | -e | 如果任一受调用命令异常结束或产生非零退出状态则退出。 | -f | 启动 C shell 不需要从位于主目录下的 .cshrc 文件搜索或运行命令。 | -i | 提示它的最高层输入(一个交互式 shell),甚至如果输入并不是来自于工作站。 如果 shell 的输入、输出与工作站连接,shell 是交互的,不需要此标志。 | -n | 语法分析命令但并不运行它们。这个标志帮助进行 shell 步骤的语法检查。 | -s | 以标准输入执行命令输入。 | -t | 读取和处理输入的单行。在当前行的末尾并继续到下一行时,可以采用一个 \ (反斜杠) 转义新一行的字符。 | -V | 序变量在 .cshrc 文件运行以前设置 verbose 外壳程。 | -v | 设置 verbose shell 变量,使命令输入在历史置换后被返回。 | -X | 即使在 .cshrc 文件运行以前也设置 echo shell 变量。 | -x | 设置 echo shell 变量,使命令在所有置换后和立即运行以前被返回。 |
文件$HOME/.cshrc | 在执行开始时由每个 shell 读取。.cshrc 文件是用户定义的。 | $HOME/.login | 登录时在 .cshrc 文件之后由登录 shell 读取。 | $HOME/.logout | 在注销时由登录 shell 读取。 | /usr/bin/sh | 包含缺省 shell 的路径。 | /tmp/sh* | 包含临时文件用于 << |
|