为什么意外标记‘fi’附近出现语法错误

为什么意外标记‘fi’附近出现语法错误
#!/bin/bash

#

#

#

#

echo -e "please insert user name :"

read un

echo "$un"

len=${#un}

echo "$len"

ze=0

te=10

if [ "$len" -eq "$ze" ]

than

echo "no argument"

exit

fi

if [ "$len" -ge "$te" ]

than

echo "the Argument maximum 10 alphanumeric"

exit

fi

答案1

简而言之:拼写错误:它是then,不是than

更长的故事:该命令的语法if如下(粗体字符标记不能省略或替换的单词):

如果测试命令;然后 命令;

您可以在其中;用换行符替换标记。

shell 将解释than测试命令,但它发现了一个fi不正确的语句(是的,意外),因为它从未遇到过该then部件。

相关内容