我的问题是我需要设置一些变量,并在每次登录ssh
shell时输出几行,同时我必须能够通过Filezilla使用sftp来传输文件.
现在,根据http://www.openssh.org/faq.html的openssh FAQ,如果您的启动脚本回显任何类型的输出,它会与sftp混淆.所以它要么无限延迟,要么出现错误,“连接由服务器关闭,退出代码为128”.
我尝试过将.bashrc移动到.bash_profile,或者在.bashrc中使用以下代码的解决方案:
if [ "$TERM" != "dumb" ] then source .bashc_real fi
和:
if [ "$TERM" = "xterm" ] then source .bashc_real fi
然而,没有任何作用.我的shell终端是bash,我用filezilla连接到sftp.
解决方法
尝试这样做
if [ "$SSH_TTY" ] then source .bashc_real fi