分享

csh 命令详解

 zale的图书馆 2011-06-08

用途

调用 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 变量。

注意:
  1. 如果 C shell 已经运行,.cshrc 文件可被再次读取通过输入 源 路径名,其中路径名参数是一个路径,此路径通向 .cshrc 文件。
  2. 为避免远程操作出现问题, .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*包含临时文件用于 <<

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多