rsadmchef
Goto Top

Nregp ereignis für bash-script

Hallo zusammen

Betreibe Lubuntu 14.04 LTS.
Wenn ein Browser läuft, kann man mit ngrep einen Netzwerk-Traffic mitschneiden

In einer Schleife möchte ich das Ereignis "200 OK" erfassen, die Schleife soll in einem bash-script laufen.

Etwa so:

#!/bin/sh
#
firefox www.meineseite.de >/dev/null &
#
( ok=$(ngrep -d eth0 | grep "200 OK") ) &
#
while [ $ok != "200 OK" ]; do
echo Waiting...
done


Also die Variable ok ändert erst mit Firefox HTTP-Serverrückmeldung ihren Wert.
Und erst dann soll die Whileschleife abbrechen. Allerdings tut sie das nicht.

Kann das jmd erkennen warum nicht ?


Gruß
rsadmchef.

Content-ID: 326178

Url: https://administrator.de/contentid/326178

Ausgedruckt am: 25.11.2024 um 06:11 Uhr

131381
131381 12.01.2017 aktualisiert um 13:12:27 Uhr
Goto Top
Wieso nimmst du für sowas nicht curl ??
curl -s -w "%{http_code}\\n" "http://www.meineseite.de" -o /dev/null | grep "200" >/dev/null && echo 'OK' || echo 'Nicht OK'  

Gruß mik
rsadmchef
rsadmchef 23.01.2017 um 06:12:48 Uhr
Goto Top
curl ist keine lösung da sich mit dem FF auf die Seite eingeloggt wird und somit dynamisch erfasst werden muss.
131381
131381 23.01.2017 aktualisiert um 08:38:54 Uhr
Goto Top
Kann das jmd erkennen warum nicht ?
Weil du den Status nur einmal vor der Schleife abfragst und
sich die Variable "OK" später dann nie mehr ändert, das ist der Grund warum du ewig in der Schleife hängen bleibst.
Also musst du entweder in der Schleife erneut mit ngrep auswerten oder das direkt in der Schleifenbedingung tun...