Hinweis: Das Forum wird geschlossen! Neue Registrierungen sind nicht mehr möglich!

 Zurück zu Pro-Linux   Foren-Übersicht   FAQ     Suchen    Mitgliederliste
Per bash Zeilen aus einer Datei löschen ?

 
Neuen Beitrag schreiben   Auf Beitrag antworten    Pro-Linux Foren-Übersicht -> Sonstiges
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Sebastian Pfohl
Gast





BeitragVerfasst am: 23. Sep 2001 19:19   Titel: Per bash Zeilen aus einer Datei löschen ?

Kann mir bitte jemand hier verraten wie ich mittels einer bash (is fürn script) verschiedene Zeilen aus einer Datei löschen kann ?
N Beispiel wäre sehr schön ...
 

Jochen
Gast





BeitragVerfasst am: 24. Sep 2001 8:05   Titel: Re: Per bash Zeilen aus einer Datei löschen ?

Direkt aus einer Datei herauslöschen ist schwierig, da gibt es m.E. kein Standard-Kommando für. Wenn es Dir reicht, dass man beim Auslesen der Datei die entsprechenden Zeilen ausfiltert und das Ergebnis unter dem alten Namen abspeichert, kann man wie folgt vorgehen:

code:

#!/bin/bash
# Skript: filterout

if [ $# -eq 0 ] ; then
echo "Usage: $0 file [ file ... ]" >&2
exit 2
fi

ERROR_OCCURED=0

for ARG ; do
if sed '/RA-der-zu-löschende-zeilen-beschreibt/d' "$ARG" > "$ARG.$$" ; then
mv "$ARG.$$" "$ARG"
else
echo "$0: Error while deleting lines - no change to original file \"$ARG\"!" >&2
rm -f "$ARG.$$"
ERROR_OCCURED=1
fi
done

exit $ERROR_OCCURED



Rückgabewerte sind 0 bei Erfolg, 1 bei Fehlern im Zeilenfiltern bei mind. einer Datei und 2 bei falschem Aufruf (ohne Parameter).

Das sed-Kommando kannst Du auch (falls Du Dich mit sed nicht wohlfühlst) durch ein

grep -v 'regulaerer-Ausdruck'

ersetzen, oder durch ein

fgrep -v 'fixe-Zeichenkette'

oder im Falle des Falles auch durch den awk, da kann man schön nach den Werten einzelner Felder in einer Zeile operieren.

Viel Spass dabei!

Jochen
 

Sebastian Pfohl
Gast





BeitragVerfasst am: 24. Sep 2001 16:21   Titel: Re: Per bash Zeilen aus einer Datei löschen ?

thx, klappt hervoragend mit grep ...
 

Beiträge vom vorherigen Thema anzeigen:   
     Pro-Linux Foren-Übersicht -> Sonstiges Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehen Sie zu:  

Powered by phpBB © phpBB Group
pro_linux Theme © 2004 by Mandaxy