附近有语法错误

0 bash if-statement function token

相当长一段时间以来,我一直在努力处理这个小代码段。

#!/bin/bash

testFunction() { 

        if [ -d "/home/$USER/.skandPATH/" ] ; then 
                #Exists. Do nothing. 
        else 
                mkdir /home/$USER/.skandPATH/   #Does not exist. Creates directory 
                addedPathDir=1 
        fi
} 

testFunction 
Run Code Online (Sandbox Code Playgroud)

每次我运行它时,我都会收到以下消息:

./functionInScript.sh: line 7: syntax error near unexpected token `else'
./functionInScript.sh: line 7: `else '
Run Code Online (Sandbox Code Playgroud)

我搜索了数十个“意外令牌重击附近的语法错误”,并尝试了数十个建议。

我已经在该文件上运行了 dos2unix (即使我使用的是 Mint)。我已经转义了“.skandPATH”中的点,但这似乎没有什么区别。我尝试删除每个空白字符和制表符。我尝试注释掉行并执行脚本以尝试查明问题,但无济于事。我束手无策,试图找出这里出了什么问题!

如果你能帮助我...我将不胜感激。

Ign*_*ams 5

一个块中必须至少有一个命令尝试: