2013-03-01 84 views
3

我试图让我的bash的个人资料,以激活shell启动一个kerl实例,所以我把我的.profile如下:猛砸嵌套的if-else错误

if [ -d /opt/erlang/ ]; then 
    ERL_ENV=`ls -1d /opt/erlang/r* | sort | tail -1`; 

    if [ -f "$ERL_ENV/activate" ]; then 
     . $ERL_ENV/activate 
    else 
     echo "Couldn't activate latest erlang environment" 
    fi 
fi 

当我尝试源文件虽然我得到这个错误:

-bash: .profile: line 30: syntax error near unexpected token `then' 
-bash: .profile: line 30: `    if [ -f "$ERL_ENV/activate" ]; then' 

我已经试过了几种方法,但我的bash是太生疏。有什么问题?

我使用OSX的Bash(GNU的bash,版本3.2.48(1)-release下(x86_64-苹果darwin12))

+0

我没有得到任何错误的代码相同的一段。我在文件中使用Fedora 16 – 2013-03-01 05:29:33

+2

DOS回车符? – tripleee 2013-03-01 05:44:24

+0

好主意!这导致了我真正的问题。 – 2013-03-01 06:18:06

回答

2

我决定开启困难模式,并期待在十六进制。结束了,这是在复制粘贴的Unicode字符

该文件的十六进制看起来是这样的: Free Hexy Pics!

了“E2 8082”里的光标定位于图像实际上是一个愚蠢的小En Space
用真实空间代替固定它。

尽管感谢其他人的回答!