Hallo,
ich kenne mich nicht mit Linux aus aber für Einige ist sowas bestimmt kein großes Problem.
Wie kann man unter Termux meine lokale IP auslesen und einer Variable namens DATA übergeben?
Z.B. im start.sh auslesen und in playlist.pyhurl = '
Sie müssen registriert sein, um Links zu sehen.
' diese eninsetzen.?
Irgendwie sowas:
DATA=ifconfig........ Hier unter DATA soll meine lokale IP (192.168.2.25) unter der Variable ausgelesen sein
und in hurl = $DATA als Variable an der Stelle einsetzen.
Ich versuche schon Stunden lang das hinzubekommen. Es klappt nicht!
Das ist die Lösung! Super und vielen Dank
Jetzt noch der letzte Schritt:
Jetzt habe ich noch zusätzlich die DATA modifiziert und folgendes hinzugefügt: DATA='http://'ifconfig | grep broadcast | sed -e 's/ *inet //' -e 's/ .*$//'':8080' (und es kommt jetzt:
Sie müssen registriert sein, um Links zu sehen.
raus).
Die Variable Data ist jetzt so in einer start.sh definiert und die möchte ich an meine playlist.py übergeben.
Wie macht man das? Muss man die Variable DATA in der playlist.py extra definieren? (sowas ähnliches wie z.B. Public DATA in einem vbscript?)
Für die Hilfestellung werde ich dankbar.
Eine Shell-Variable ist nur innerhalb der Shell vorhanden, in der sie erzeugt wurde!
Frag mal die Python-Spezialisten, wie man die IP direkt in Python abfragen kann. Das wäre der bessere Weg.
Die Idee mit dem Shell-Skript ist sehr gut.
Leider übernimmt die playlist.py die Variable von dem start.sh nicht.
In der $HOME/start.sh habe ich die Anweisung: Export DATA='http://'ifconfig | grep broadcast | sed -e 's/ inet //' -e 's/ .$//'':8080' eingefügt. (
Sie müssen registriert sein, um Links zu sehen.
)
Dann in der $HOME/lighttpd/www/playlist.py folgendes eingetragen:
1. import os (eigentlich war es schon drin)
2. hurl = os.getenv("DATA")
und am Ende steht in der M3U-Liste anstatt
Sie müssen registriert sein, um Links zu sehen.
None/playlist2.php?id=... was falsch ist.
Vielleicht weil die start.sh und playlist.py in unterschiedlichen Ordnern liegen!
Wenn ich damit nicht weiter kommen sollte dann kann man in der erzeugten im Ordner lighttpd/www/M3U-Liste (ist eine Text-Datei)
über den sed Befehl in der Zeile, wo sich z.B.
Sie müssen registriert sein, um Links zu sehen.
befindet, die durch die Variable DATA zu ersetzen?
So müsste das auch gehen.
Welches Weg soll ich einschlagen?
Vielleicht ein kleines Beispiel mit dem ersetzen des Strings in der M3U-Liste:
....
Das werde ich jetzt probieren. Vielen Dank
Habe es gerade probiert.
Schade, das mit dem Python klappt so nicht! Als Ergebnis kommt: IP: 127.0.0.1 und leider nicht meine IP (192.168.2.25)
Vielleicht fehlt hier noch was in dem Aufbau.
Ich denke, wenn es klappen würde, wäre dieser Weg der einfachster.
Erstmal vielen Dank für die Unterstützung