0

When i am using multiple if-else i am still getting some syntax error. please help

stats=$(rpm -qa | grep MySQL)
set -f  # turn off globbing, so as not to expand wildcards
arr=($(echo "$stats" | sed 's/,/ /g'))
if [[ "${arr[0]}" == "MySQL-server-5.6.11-2.rhel5" ]] && [[ "${arr[1]}" == "MySQL-client-5.6.5_m8-1.rhel5" ]]; then
        rpm -e MySQL-server-5.6.11-2.rhel5
        rpm -e MySQL-client-5.6.5_m8-1.rhel5
        echo "MySQL Successfully Removed";
elif [ "${arr[0]}" == "MySQL-server-5.6.11-2.rhel5" ]; then
         rpm -e MySQL-server-5.6.11-2.rhel5

elif [ "${arr[1]}" == "MySQL-client-5.6.5_m8-1.rhel5" ]; then
         rpm -e "MySQL-client-5.6.5_m8-1.rhel5
else
        echo "Done"

fi
4

1 回答 1

0

您需要在第二个条件中添加一个空格:

[["${arr[1]}" == "MySQL-client-5.6.5_m8-1.rhel5"]]
  ^                                            ^
   \                                          /
    - here                              here -

所以它是

[[ "${arr[1]}" == "MySQL-client-5.6.5_m8-1.rhel5" ]]
于 2013-07-01T08:14:45.237 回答