Beiträge von suerte

    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!


    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.

    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

    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?

    Bash
    #!/bin/bash
    #set -x
    
    
    while [ 1 ]
    do  
      `tail -f test.txt | > temp.txt`
      echo "TEST"
      echo `cat temp.txt`
    done


    das kleine shell skript sollte jegliche eingabe nach temp.txt umleiten.
    das skript bleibt korrekter weise bei `tail -f ....` stehen und wartet auf eingabe bzw. veränderung der test.txt. Nachdem ich eine neue Zeile in test.txt geschrieben habe, hüpft das skript weiter und gibt TEST aus. Dann steht es wieder bei `tail ...` und wartet jedoch steht nichts in der temp.txt!!!

    Hallo an alle,


    ich bin es mal wieder. Fast schon täglich stell ich hier neue Fragen rein und freue mich immer aufs neue das mir hier Linux Cracks helfen.
    Zu meinem Problem:


    Ich möchte eine text.txt auf einen Bestimmten Zeileninhalten prüfen.
    Es soll ein skript geschrieben werden, welches die Datei text.txt
    immer wieder neu überprüft ob der neu hinzugekommene Text den bestimmten Zeileninhalt beinhaltet.
    Ich habe bereits soetwas wie:


    `tail -f text.txt | grep "XXX"`


    probiert, jedoch liefer tail einfach nichts zurück.
    Rufe ich diesen Befehl in der shell als einziges Funktion auf,
    schreibe was in text.txt hinzu gibt er mir auch die Zeilen mit XXX aus.
    Benutze ich mein shell skript bleibt er sozusagen bei der oben genannten Zeile hängen.
    Ich denke es liegt daran, dass tail -f die Eigenschleife nicht einfach so beendet.
    Jedoch funktioniert das alles nur mit einem tail -f, da in die Datei unter Umständen auch
    Inhalte größer mehrerer 100 Zeilen reingeschrieben werden und nur die aktuell reingeschriebenen Zeilen für mich interessant sind.
    Hoffe es ist klar was ich meine.


    Gruß

    nein. ich hatte lediglich den treiber auf der ati seite für meine grafikkarte runtergeladen und versucht zu installieren.
    das scheiterte mit dem in deinem post geschriebenen fehler das das packet nicht erstellt werden konnte.
    danach ruckelte alles extrem, scrollen im firefox war gar nicht mehr möglich, verschieben von fentern war nur bedingt möglich (also extramst geruckelt).
    nach dem ich dann den treiber von der homepage (siehe 2 post weiter oben) installiert habe, lief alles nach einem neustart ohne probleme. alle effekte und sonstiges funktioniert ohne probleme.

    wie du eventuell einen post weiter oben hättest lesen können, kommt es zu keiner abmeldung mehr. ergo gibt es auch keine fehler einträge in den log files ergo brauche ich dort gar nicht schaun da dort nichts steht.


    eher poste ich die error messages von ati's logfile in dem unter anderem folgendes steht:


    [Message] Kernel Module : Trying to install a precompiled kernel module.
    [Message] Kernel Module : Precompiled kernel module version mismatched.
    [Error] Kernel Module : Kernel module build environment not found - please consult readme.