[Erledigt] grep im Script funktioniert nicht, per Konsole schon

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • [Erledigt] grep im Script funktioniert nicht, per Konsole schon

    Hallo zusammen,

    bin mit meinem Latein langsam am Ende. Die Materie Linux ist für mich wirklich neu, aber so schwer kanns doch nicht sein.

    Ich möchte mit einem Script eine Log überwachen aber scheitere am grep Befehl.
    Führe ich per Konsole das folgende aus bekomme ich die gewünschte Rückmeldung:

    Quellcode

    1. grep -w test123 /etc/logs/test.log


    Das selbe Kommando gespeichert in test.sh und per sh test.sh oder im VTI-Menü ausgeführt führt zur Fehlermeldung:

    Quellcode

    1. grep: /etc/logs/test.log: No such file or directory
    2. Ausführung beendet.

    Finde den Fehler :crazy2:

    Vielen Dank für eure Hilfe!
  • Das ist es ja, im Script steht aktuell nur dieser Befehl und es scheitert schon.

    Hier mal noch mit ein wenig Abfrage und Ausgabe

    [code]if test123 /etc/logs/test.log
    then echo "found"
    else echo "not found"
    fi[/code}

    Berechtigungen sind auf 755, daran kann es auch nicht liegen.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von florianr ()

  • Das war ein Kopierfehler, hier korrekt:

    if grep -w -n test123 /etc/logs/test.log
    then echo "found"
    else echo "not found"
    fi

    Geht einfach nicht in meinen Kopf, derselbe Befehl kopiert liefert in der Konsole ein Ergebnis. Im Script findet er das Logfile nicht...

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von florianr ()

  • Script hat in der ersten Zeile stehen: #!/bin/bash oder #!/bin/sh? (Fehlermeldung passt nicht, aber trotzdem:) Script hat auch keine Windows-Zeilenende (CR/LF) sondern Unix-Zeilenenden (nur LF)?
    Diskutiere nie mit einem Idioten. Er zieht dich auf sein Niveau runter und schlägt dich mit seiner Erfahrung.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von rdamas ()

  • Habe gerade dein script bei mir probiert. Das tut was es soll.

    Habe es mit sh test.sh aufgerufen

    Sind da vielleicht noch irgendwelche Sonderzeichen in dem Filenamen /etc/logs/test.log enthalten im script?