2017-12-25 3 views
1

ich etwa eine Stunde googeln warum Skript meiner bash finden Fehler, und ich fühle, wie mein Gehirn bereit ist, keine Antworten auf Explosion bringen, mir bitteBash, Syntaxfehler: ‚elif‘ unerwartet nach elif Linie

dtc=$(df /cache | awk '{print $4}' | awk 'NR==2') 
    if [ "$dtc" -gt "196608" ]; then 
     echo -ne "|   | 0%|   |\r" 
     su -c "/system/0211/installer/swap/0211swaptocache192mb.sh" 
     sleep 0.8 
     echo -ne "|>>>>>> | 30%|   |\r" 
     mkswap /cache/0211swap.img 
     swapon -p 1 /cache/0211swap.img 
     echo 100 > /proc/sys/vm/swappiness 
     sleep 0.8 
     echo -ne "|>>>>>>>>>| 55%|>  |\r" 
     cp /system/0211/installer/swap/0211swapon /system/etc/init.d/0211swapon 
     sleep 0.8 
     echo -ne "|>>>>>>>>>|100%|>>>>>>>>>|\r" 
     chmod 777 /system/etc/init.d/0211swapon 
     sleep 1 
     echo -ne "|>>>>>>>>>|Done|>>>>>>>>>|\n" 
     sleep 0.8 
     echo "If nothing wrong, your Swap is 192MB and should active" 
     sleep 0.8 
     else 
     echo "/cache partition: not enough space" 
     sleep 0.8 
    elif [ "$dtc" -gt "163840" ]; then 
     echo -ne "|   | 0%|   |\r" #this is the error 
     su -c "/system/0211/installer/swap/0211swaptocache160mb.sh" 
     sleep 0.8 
     echo -ne "|>>>>>> | 30%|   |\r" 
     mkswap /cache/0211swap.img 
     swapon -p 1 /cache/0211swap.img 
     echo 100 > /proc/sys/vm/swappiness 
     sleep 0.8 
     echo -ne "|>>>>>>>>>| 55%|>  |\r" 
     cp /system/0211/installer/swap/0211swapon /system/etc/init.d/0211swapon 
     sleep 0.8 
     echo -ne "|>>>>>>>>>|100%|>>>>>>>>>|\r" 
     chmod 777 /system/etc/init.d/0211swapon 
     sleep 1 
     echo -ne "|>>>>>>>>>|Done|>>>>>>>>>|\n" 
     sleep 0.8 
     echo "If nothing wrong, your Swap is 160MB and should active" 
     sleep 0.8 
    fi 
helfen

Kann mir bitte jemand helfen? ‚Elif‘ unerwartet, aber der Fehler ist auf der Linie nach dem elif

+2

ein shebang hinzufügen und das Skript dann dort einfügen: http: // www .shellcheck.net/ – Cyrus

+0

danke, ich kann wissen, wo ist meine Schuld für das gesamte Skript –

+0

und wo ist es? –

Antwort

4

Es gibt eine else in der Mitte des then Abschnitt:

... 
    echo "If nothing wrong, your Swap is 192MB and should active" 
    sleep 0.8 
    else # <-- this needs to go *after* the last `elif` section 
    echo "/cache partition: not enough space" 
    sleep 0.8 
elif [ "$dtc" -gt "163840" ]; then 
... 
+0

Ja, ich habe das nicht gesehen vielen Dank –