PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Alle Zeilen die Muster entsprechen aus Datei löschen?



pommes
04.06.04, 19:20
n'abend
brauche mal schnell Hilfe für ein shellskript

ich will aus einer Datei jede Zeile, die $text enthält löschen

danke!

BSM
04.06.04, 19:26
Sollte mit



grep -v $text datei > neuedatei


gehen, ansonsten wie immer www.mrunix.de ;)

Gruss Robert

pommes
04.06.04, 19:33
Sollte mit



grep -v $text datei > neuedatei


gehen, ansonsten wie immer www.mrunix.de ;)

Gruss Robert

hm, das könnte problematisch sein, da es sich dabei um /var/log/messages handelt - hätte ich vielleicht eher sagen sollen :(
denn dann müsste ich ja sowas machen wie



grep -v $text alte.datei > neue.datei
rm alte.datei
mv neue.datei alte.datei


das hieße, dass messages u.U. einen Moment nicht beschrieben werden kann

oder ist das unkritisch?

btw: *registrier* *bookmark*

peschmae
05.06.04, 11:49
sed "s/.*$text.*//" -i /var/log/messages

dürfte auch gehen. Allerdings weiss ich nicht wie sich das verhält wenn während dem sed'en ein Eintrag geschrieben werden soll. Aber afaik macht das keine Temporärdatei.

MfG Peschmä

Jasper
05.06.04, 12:56
Aber afaik macht das keine Temporärdatei.


doch, macht es. jedes mir bekannte in-place editing wie zb. perl oder sed arbeitet mit tempfiles.


-j

HEMIcuda
05.06.04, 13:21
Was mich grad stutzig macht: Warum sollte man Zeilen aus der /var/log/messages entfernen wollen?
Im Moment faellt mir nur ein wirklich triftiger Grund ein... :D

'cuda

BSM
05.06.04, 13:51
Welcher denn? :D

Könnte man zb verwenden um iptables Einträge aus messages rauszupacken, wobei es dazu angeblich noch einfachere sachen gibt...

Gruss Robert

core
05.06.04, 14:01
Ja, einfachere Sachen... Dinge die man nicht im Log haben möchte nicht Loggen.

Gruss

peschmae
05.06.04, 16:19
Was mich grad stutzig macht: Warum sollte man Zeilen aus der /var/log/messages entfernen wollen?
Im Moment faellt mir nur ein wirklich triftiger Grund ein... :D


Der wäre?

Irgendwelche Spuren verwischen? Da wäre es doch auch recht gleich ob zwischendurch-Meldungen rausfallen oder nicht, oder?

MfG Peschmä

HEMIcuda
05.06.04, 16:25
Hmm... nicht unbedingt. Es faellt vielleicht auch auf, wenn Meldungen, die
da sein sollten, fehlen.

'cuda

pommes
06.06.04, 00:40
Welcher denn? :D

Könnte man zb verwenden um iptables Einträge aus messages rauszupacken, wobei es dazu angeblich noch einfachere sachen gibt...

Gruss Robert
das ist genau meine Anwendung

BSM
06.06.04, 12:00
Zieh dir mal das hier rein:

http://lists.suse.com/archive/suse-linux/2002-Nov/4428.html

SuSE benutzt bei den iptables log Optionen die hier: --log-level warning --log-tcp-options --log-ip-option --log-prefix SuSE-FW

Vielleicht kannst du das auf dein iptables Skript übertragen, bei mir loggt er jetzt alles nach /var/log/firewall.

Gruss Robert

pommes
07.06.04, 11:51
hab das jetzt eigentlich schon fertig und bin damit auch zufrieden, wie es läuft