(geschlossen)tail -f | grep --> Problem

Hinweis: In dem Thema (geschlossen)tail -f | grep --> Problem gibt es 21 Antworten auf 3 Seiten. Der letzte Beitrag () befindet sich auf der letzten Seite.
  • auch wenn ich jetzt bisschen härter ins gericht gehe, aber ich habe oben eindeutig klar gemacht was passiert.


    es wird einfach durchgelaufen und es ist sch*** egal was ich in die .txt datei schreibe es wieder trotzdem einfach weiter gemacht. er soll ja schließlich da stehen bleiben und dann warten bis etwas kommt aber wie soll ich checken ob das richtige reingeschrieben wurde wenn er eh bei egal welchem inhalt weiter geht.
    schreibe ich xxx rein gehts weiter
    schreibe ich YYY rein gehts weiter
    Wenn ich jetzt auch AAA checken will hüpft der doch sowieso weiter.
    ist die problematik nun beim 2ten mal klar?

    Für den Inhalt des Beitrages 12095 haftet ausdrücklich der jeweilige Autor: suerte

  • Zitat von suerte;12095

    auch wenn ich jetzt bisschen härter ins gericht gehe, aber ich habe oben eindeutig klar gemacht was passiert.


    offensichtlich nicht.


    Zitat


    es wird einfach durchgelaufen und es ist sch*** egal was ich in die .txt datei schreibe es wieder trotzdem einfach weiter gemacht.

    was macht einfach weiter?
    Deine nicht funktionierende Loesung? Alle anderen angegebenen Loesungsmoeglichkeiten?


    Glaubst du, dass wir alles sehen, was auf deiner Kiste passiert?


    Zitat


    er soll ja schließlich da stehen bleiben

    Wer soll wo unter welchen Bedingungen stehen bleiben?
    Dein script bei Eingabe des Begriffes?
    Was meinst du mit stehen bleiben? (Ein Rechner der steht, steht.)
    Soll das eine Nullschleife sein?
    Was soll es präzise tun?


    Zitat


    und dann warten bis etwas kommt

    "warten bis etwas kommt" heißt, es soll in einer Endlosschleife die Eingabe auf eine Bedingung testen.
    Das stand alles schon oben.


    Zitat


    aber wie soll ich checken ob das richtige reingeschrieben wurde wenn er eh bei egal welchem inhalt weiter geht.

    Dann ist offensichtlich deine Abbruchbedingung falsch


    Zitat


    schreibe ich xxx rein gehts weiter
    schreibe ich YYY rein gehts weiter
    Wenn ich jetzt auch AAA checken will hüpft der doch sowieso weiter.
    ist die problematik nun beim 2ten mal klar?

    Wie gesagt, es wird die Bedingung falsch formuliert sein.


    Nur lässt sich das erst klären, wenn der Herr Scharfrichter bereit wäre, den fehlgeschlagenen Code uns samt den Fehlermeldungen mitzuteilen.


    Haben Sie das jetzt verstanden?


    Kannst du dir vorstellen, wie unendlich ärgerlich es für Leute ist, ständig wieder nachzufragen, für Leute, die dir FREIWILLIG und UNENTGELTLICH helfen?


    Hälst du es wirklich für sinnvoll mit diesen Menschen "scharf in's Gericht zu gehen"?


    Meinst du nicht, dass es das Mindestmaß an Hoeflichkeit fordert, deren Anforderungen zu entsprechen?


    Und wenn du im Reply wieder keine verwertbaren Angaben bringst,
    kannst du dir das Bashscripting selbst beibringen.
    Links dazu findest du oben.

    Für den Inhalt des Beitrages 12110 haftet ausdrücklich der jeweilige Autor: }ls{

  • finde nicht das meine reaktion unangemessen ist.
    schließlich sollten die worte tail und while schon alles sagen.


    Es gibt ein skript namens skript.sh . Dieses wird gestartet und es läuft los. Es läuft und läuft und läuft. Nun soll mit einem handy auf einer server nummer angerufen werden. dieser server schreibt den anruf (in meinem fall die anfrage bzw "das Anklopfen" in die message.txt).


    skript.sh überprüft message.txt auf meine telefonnummer, die ja erscheind, wenn ich beim server anrufe.


    So, also soll skript.sh nun mit einer while [ 1 ] und einer until [ tail... ] laufen und immer auf tail .... testen. wenn nun tail den gewünschten text in der message.txt findet, wird until verlassen und unter until [ tail ... ] steht dann echo "Test" und es wird zurück zur until gesprungen und erneut getestet da while [ 1 ] niemals verlassen wird.


    Code
    while [ 1 ]
    do
    until [ tail XXXXXXX ]
    do
    done
    echo "Test"
    done

    Für den Inhalt des Beitrages 12329 haftet ausdrücklich der jeweilige Autor: suerte

  • Dir ist aber bewusst, dass die While-Do Schleife erst aufhört, wenn der Rückgabewert ein Falschwert ist?!


    Wenn jetzt die Nummer gefunden ist, wäre dies ja ein Wahrheitswert. Dann läuft die Schleife endlos.

    Für den Inhalt des Beitrages 12330 haftet ausdrücklich der jeweilige Autor: Dracul

  • Ich darf mich selbst zitieren:

    Zitat


    Und wenn du im Reply wieder keine verwertbaren Angaben bringst,
    kannst du dir das Bashscripting selbst beibringen.
    Links dazu findest du oben.

    Den wichtigsten Teil, nämlich die Bedingung, hast du durch "X"e unlesbar geliefert.
    Die Fehlermeldungen (oder der Hinweis, dass es keine gibt) fehlen.


    Somit:
    Lies das:
    ISBN 978-3-8362-1157-4


    Dein Problem wirst du damit schon nach geschätzten hundert Seiten loesen.
    700 weitere, bleiben dann zur Buße.


    Kommt dir das nicht langsam peinlich vor?
    Warum, zum Teufel, wenn ich doch schon sage, dass es wohl die Bedingung sein muss, musst du ausgerechnet diesen Teil weglassen?


    Glaubst du im Ernst, dass nicht funktionierende Bedingungen geheim zu halten sind?
    Hast du Angst, dass dir einer deine geistige Arbeit klaut?
    Oder willst du andere User vor solchen Torheiten schützen?


    Ich kapiere einfach nicht, warum du, wenn du schon Hilfe willst, nicht wenigstens die MINDESTinformation bereitstellst.


    Deine voll entgleiste Rechtfertigung macht es nur schlimmer...


    p.s.: ich hab spaßhalber ein script geschrieben, das genau das tut....
    das kann ich dir aber nicht zumuten: es verwendet "awk".....
    Das lernen wir erst ab Seite 483

    Für den Inhalt des Beitrages 12331 haftet ausdrücklich der jeweilige Autor: }ls{

  • Hallo suerte,


    mal was Grundsätzliches, wenn Du hier Hilfe suchst und darauf angewiesen bist das dir hier User ihr Wissen zu Verfügung stellen welches Du scheinbar nicht hast aber haben willst, solltest Du langsam aber sicher eine Entscheidung treffen wie das hier weiter gehen soll.


    Entweder Du bedienst die angeforderten Angaben derjenigen die dir Helfen wollen so das dies auch ein richtiger Beitrag wird der die Bezeichnung → Problemlösung ← auch verdient, oder Du lässt es und dieser Beitrag wird wegen Sinn- & Nutzloser Poster' ei geschlossen!


    Howgh, der Admin hat besprochen!


  • das skript verlässt die until schleife NIE. until testet auf 0 also sollte until solange ausgeführt werden bis er was findet. Da die until bedingung aber nie 1 wird, also er nie was findet kann er die until schleife auch nie verlassen.
    Deß weiteren wird echo "Nothing" auch NIE ausgeführt was mich zu der aussage führt, dass die bedingung von until nie verlassen wird sprich er bleibt immer an der stelle

    Code
    until [ `tail -f text.txt | grep XXX` ]

    stehen und läuft nicht wie geplant in die schleife und führt

    Code
    echo "Nothing"

    aus.

    Für den Inhalt des Beitrages 12363 haftet ausdrücklich der jeweilige Autor: suerte

  • Code
    while [ 1 ]
    do
      until [ `tail -f text.txt | grep XXX` ]
      do
      echo "Nothing"
      done
      echo "Until wurde erfüllt und wird somit beendet"
    done


    Das script tut genau das, was du programmiert hast.


    In der inneren Schleife sagst du:

    Code
    do
        echo "Nothing"
    done


    Wie soll bitte diese Schleife verlassen werden?


    Soll sich die bash, weil ihr das irgendwann zu langweilig wird, mal eben einfach selbst eine Abbruchbedingung einbauen?


    Und wenn du ein script lassen warten willst, lies mal "man sleep".


    Wie oft hast du uns jetzt gezwungen wieder und wieder nachzufragen?
    Glaubst du nciht, dass du dieses Problem schon längst geloest hättest, wenn du schlicht das ganze von Anfang an einfach reingepostet hättest?


    Macht es uns Spaß so einfache Probleme nicht mit einer Antwort, sondern mit viel zu vielen und nervtoetendem Geschwätz zu loesen?


    Bessere dich.


    Und wenn du es jetzt nciht hinkriegst, poste es das nächste Mal komplett.
    Dann kriegst du auch sofort eine richtig hilfreiche Antwort.

    Für den Inhalt des Beitrages 12379 haftet ausdrücklich der jeweilige Autor: }ls{

  • herr von und zu }ls{
    langsam gehst du mir echt auf die ZENSIERT.
    ich habe gesagt das die until schleife nie verlassen wird UND BITTE DIESES MA RICHTIG LESEN (oder nochmal ab in die erste klasse) ES WIRD NIIIIIEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE ECHO "NOTHING" ausgeführt, sprich er kann die Zeile until [ tail ... ] nicht korrekt ausführen bzw. er bleibt da stehen.


    AUßERDEM SOLL NICHT GEWARTET WERDEN SONDERN ES SOLL SOOOOOOO LANGE NICHTS PASSIEREN SOLANGE TAIL -F | GREP XXX nichts findet. wenn es gefunden wird soll die until schleife verlassen werden und das echo nach der until schleife ausgegeben werden.
    ALLEIN DIE TATSACHE das Nothing NIE NIE NIE ausgegeben wird sagt doch schon eins. Das das programm bei der zeile until hängen bleibt und wie oft soll ich das hier eigentlich noch posten. Und dieses ma antworte }ls{ bitte nicht das führt mit dir sowieso zu nichts und WIEDER NICHTS.


    Editiert: Admin → Linuxsusefan


    Beitrag Zensiert! Unangemessene Ausdrucksweise! Das ist ein öffentliches Forum in dem jeder Lesen kann, mäßige dich gefälligst!

    Für den Inhalt des Beitrages 12496 haftet ausdrücklich der jeweilige Autor: suerte

  • Hi,


    wo hast Du deine Kinderstube gelassen? Manchmal frag ich mich schon ob' s bei manchen Aussetzt, hier kann jeder lesen .... was sollen denn da andere User denken. So was kannst per PN ablassen, aber nicht hier in diesem Forum!


    Jetzt ist Schluss mit Lustig → Tür zu, Licht aus → Ende dieser Veranstaltung!!