[ 永远的UNIX::UNIX技术资料的宝库 ]

首页 > 系统管理 > 其它 > 正文
为什么我用 "rsh host command" 会有一些奇怪的讯息出现?
Steve Hayman (2001-04-19 10:32:28)
(这里所指的 "rsh"[也可能是 "remsh" 或 "remote"] 是 remote shell, 
而不是在有些系统中名为 "rsh" 的 restricted shell,这两者天差地远 
了!) 

若你在远端的帐号用的是 C shell,那远端的主机会帮你启动一个 C 
shell 来完成你所下的那个 'command',这个 shell 会读取你在远端的 
.cshrc 档。若你的 .cshrc 中有 "stty" 或 "biff" 这类不适合 non- 
interactive shell 的指令。那就可能会有你所意想不到的结果,举例来 

说,若你把 

        stty erase ^H 
        biff y 

放在你的 .cshrc 档里面你可能会得到类似以下的奇怪讯息 

        % rsh some-machine date 
        stty: : Can't assign requested address 
        Where are you? 
        Tue Oct  1 09:24:45 EST 1991 

若你使用 "at" 或 "cron",那可能也会得到类似的错误讯息。 

不过没关系,解决的方法非常简单。若你的 ".cshrc" 里面有一堆只有在 
interactive shell 中才有用的 operation,那就将那些 operation 都用 
以下的做法包起来: 

    if ( $?prompt ) then 
            operations.... 
    endif 

因为在一个 non-interactive 中不应该也没有必要去设定 "prompt"。 

还有一些只有在开启一个 login session时才有用的东西,最好搬到 
".login" 中去。 
(http://www.fanqiang.com)
    进入【UNIX论坛

相关文章

===更多相关===
 

★  樊强制作 欢迎分享  ★