Linux Guess_number脚本添加到Guess_number并运行它

Linux Guess_number脚本添加到Guess_number并运行它,linux,bash,Linux,Bash,继续出现语法错误意外结束?除了缺少的完成之外,代码中还有一些重要的逻辑和语法错误。首先,由于语法错误,您的测试子句都将失败。[测试构造要求在[和]和内部的test子句之间有一个空格。您的测试还包含变量名前面缺少$的语法错误和第一个变量名中不正确的=。它们都应该被写入: num=$(($RANDOM%11)) input=10 while [$num=input];do read -p "Enter an Integer between 0 and 10:" input echo

继续出现语法错误意外结束?

除了缺少的
完成
之外,代码中还有一些重要的
逻辑
语法
错误。首先,由于
语法错误,您的
测试
子句都将失败
[
测试构造要求在
[
]
和内部的test子句之间有一个
空格
。您的测试还包含变量名前面缺少
$
语法
错误和第一个变量名中不正确的
=
。它们都应该被写入:

num=$(($RANDOM%11))
input=10
while [$num=input];do
    read -p "Enter an Integer between 0 and 10:" input
    echo "correct"
    if [ $num -ne input ];then
        echo "incorrect guess"    
    fi
您的逻辑最好包括
echo“correct”
作为
else
if
子句,以防止
correct
与每个数字一起输出。没有这些问题的版本如下所示:

[ $num -ne $input ]
#!/bin/bash

num=$(($RANDOM%11))
input=10

while [ $num -ne $input ];do

    read -p "Enter an Integer between 0 and 10: " input

    if [ $num -ne $input ];then
        echo "  incorrect guess"
    else
        echo "  correct!"
    fi

done

exit 0