2016-08-02 39 views
0

ich weiß nicht, was die richtige Titel für diese Frage, aber ich habe ein Problem wie folgt aus:Shell-Skript, wie eine richtige Erklärung in Android erstellen

ich eine Datei in a Ordner, der Name ist test.txt und hat einen Wert 6
i das Terminal öffnen und verwenden su Befehl root-Zugriff zu erhalten (nur für den Fall), dann versuche ich dieses Skript

tek="https://stackoverflow.com/a/test.txt" 
if [ "$tek" -le "8" ]; then 
    echo " 6 <= 8 " 
else 
    echo "nice" 
fi 

und es ist ein Fehler sush: /a/test.txt: unexpected '/' tmn
Ich versuche einen anderen Weg wie diese tek="a/test.txt" und ich bekomme einen Fehler sush: a/test.txt: zero divisor tmn
kann mir jemand sagen, was ist los mit meinem Skript?

ich tue dies alles in Android-Gerät

wenn es jemand wissen, was der richtige Titel für diese Frage ist, bitte es ändern, ich so dankbar sein werde

+0

, was passiert, wenn Sie? (Schwer zu wissen, was du für deinen Titel schreiben sollst ;-)) ... Viel Glück. – shellter

+0

Ich weiß nicht, wo ich das 'echo $ SHELL' setzen soll, also ist das Problem der Fehler, vielleicht ist meine Deklaration falsch, fehlt, oder etwas ähnliches –

+0

Ich hätte das erwähnen sollen" vielleicht können wir helfen, dein Problem zu diagnostizieren Wir wissen, "welche Antwort Sie erhalten, wenn Sie" echo $ SHELL "auf Ihrer Kommandozeile eingeben. Viel Glück. – shellter

Antwort

0

die erste Zeile zu lesen, Sie haben rufen $(head -n 1 a/test.txt) Bezugs nicht nur den Dateipfad, so versuchen Sie stattdessen: Typ `echo $ SHELL` auf der cmd-line

#!/bin/sh 

tek=$(head -n 1 a/test.txt) 
if [ "$tek" -le "8" ]; then 
     echo "6 <= 8" 
else 
     echo "nice" 
fi 
+0

Dank @qudproquo funktioniert es. Wenn Sie können, erklären Sie mir bitte, was die Funktion von '$' in 'tek = $ (head -n 1 /a/test.txt)' ist? Ich muss alle Funktionen und Befehle kennen, damit ich sie entwickeln kann –

+0

siehe http://stackoverflow.com/questions/2439579/how-to-get-the-first-line-of-a-file-in-a-bash -Skript – Bill