dboxulle Geschrieben 15. September 2012 Melden Share Geschrieben 15. September 2012 Tach! Ich bitte um etwas Hilfe Ich brauche ein kleines script, welches folgendes erledigt: test.log soll nach "not found" durchsucht werden und wenn es gefunden wird, test.log im selben Ordner kopieren mit Datum im Namen (test-06032012.log) und das originale test.log löschen. Ich komme mit dem if grep nicht so klar Danke vorab! Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Admin SnowHead Geschrieben 15. September 2012 Admin Melden Share Geschrieben 15. September 2012 ungetestet: #!/bin/sh file="test.log" if grep "not found" $file > /dev/null then cp $file `basename $file .log`-`date "+%d%m%Y"`.log rm -f $file fi Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
hvkls Geschrieben 15. September 2012 Melden Share Geschrieben 15. September 2012 (bearbeitet) Nimm lieber date "+%Y%m%d" , dann hast du's schoen sortiert bearbeitet 15. September 2012 von hvkls Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
dboxulle Geschrieben 15. September 2012 Autor Melden Share Geschrieben 15. September 2012 Super! Danke euch Werde mal probieren morgen... Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
dboxulle Geschrieben 25. Dezember 2012 Autor Melden Share Geschrieben 25. Dezember 2012 (bearbeitet) Tach mal wieder und Frohe Weihnachten an alle! Die Poblematik "Ich brauche ein kleines script, welches folgendes erledigt: test.log soll nach "not found" durchsucht werden und wenn es gefunden wird, test.log im selben Ordner kopieren mit Datum im Namen (test-06032012.log) und das originale test.log löschen." habt ihr mir ja oben schön gelöst und es läuft auch gut. Jetzt möchte ich es erweitern, und zwar "Ich brauche ein kleines script, welches folgendes erledigt: test.log soll nach "not found" durchsucht werden und wenn es ZEHN MAL IM LOG gefunden wird, test.log im selben Ordner kopieren mit Datum im Namen (test-06032012.log) und das originale test.log löschen." Und wie kann man nach folgendem String im Log suchen (das zwischen den Anführungszeichen): "[2] 10" Die ganze Ausgabe lautet: (aaa bbb_ccc_ddd [2] 10 Könnt ihr mir da nochmal Tipps geben? DANKE bearbeitet 25. Dezember 2012 von dboxulle Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Admin SnowHead Geschrieben 25. Dezember 2012 Admin Melden Share Geschrieben 25. Dezember 2012 @dboxulle Für die erste Frage ersetze die Suchbedingung im obigen Script durch if [ `grep -s -c "not found" $file` -ge 10 ] Dabei kann der Vergleich noch angepasst werden: -ge -> größer/gleich -eq -> gleich -gt -> größer Der Suchstring für die zweite Frage muß so aussehen: "\[2\] 10" Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
dboxulle Geschrieben 26. Dezember 2012 Autor Melden Share Geschrieben 26. Dezember 2012 Super Danke! Klappt 1A Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Empfohlene Beiträge