我的.bashrc中有以下几行,我希望在通过ssh登录时执行。
csh
source /x/y/.cshrc
source /x/y/z/sourceme
但问题是只有第一个命令正在正确执行。 (csh提示即将发布) 以下源命令不受影响。 我注意到有一些错误是从bash(而不是csh)中引发的'来源'命令
我在某处读到这可能是因为.bashrc多次执行。并且源命令试图在bash本身而不是csh中执行。
我希望在登录后一个接一个地执行所有这三个命令。我怎样才能做到这一点?我试过.bash_profile .bash_login等。我也没有/ etc / profile的写访问权
答案 0 :(得分:3)
“命令”由bash shell解释。它们不是要馈送到终端的字节。会发生什么是csh以交互方式运行,一旦退出bash将获取两个(可能是csh)脚本文件。
看起来你只是想把你的shell改成csh(为什么,我不知道)。您是否尝试过使用chsh
?
答案 1 :(得分:1)
如果您想在csh
中运行这些命令,请将其移至.cshrc
。
但要小心谨慎;绝对使用csh
引发了一个问题,你真的认为你知道你在做什么吗?为什么呢?
答案 2 :(得分:0)
source
是"bashism",也就是说它不适用于其他shell。请改用.
。