Hallo Liste! Jetzt mal ne ganz dumme frage.... Ich möchte eine Datei bearbeiten in der eine Zeichenfolge xhundert mal vorkommt. Also zb. a=x jetzt möchte ich das a=x in a=y umändern. Wenn ich das jetzt über Pattern suche gehts ja schon schnell.... aber wenn diese Zeichenfolge ein paar hundertmal auftaucht ist das nicht mehr so witzig. Gibts da eine möglichkeit sowas aus der Konsole zu ändern? also irgendwie mit cat datei suche a=x und änder in a=y???? Sorry aber ich weiß nicht wie ich das jetzt anders Formulieren soll :-/ Gruß Maurice
Hallo, ke, 2006-08-16 kello 02:17 +0200, Maurice Schmidt kirjoitti:
Hallo Liste! Jetzt mal ne ganz dumme frage....
Ich möchte eine Datei bearbeiten in der eine Zeichenfolge xhundert mal vorkommt. Also zb. a=x jetzt möchte ich das a=x in a=y umändern. Wenn ich das jetzt über Pattern suche gehts ja schon schnell.... aber wenn diese Zeichenfolge ein paar hundertmal auftaucht ist das nicht mehr so witzig. Gibts da eine möglichkeit sowas aus der Konsole zu ändern? also irgendwie mit cat datei suche a=x und änder in a=y????
Sorry aber ich weiß nicht wie ich das jetzt anders Formulieren soll :-/
Wie wäre es mit: sed 's/a=x/a=y/g' datei Oder verstehe ich da etwas falsch? Gruß Kimmo
Oder mit vim: Datei öffnen und :%s/a=x/a=y/g eingeben. lg Stefan Am 16.08.06 schrieb Andre Tann <atann@gmx.net>:
Sorry für PM...
Maurice Schmidt, Mittwoch, 16. August 2006 02:17:
also irgendwie mit cat datei suche a=x und änder in a=y????
sed s/a=x/a=y/g datei > datei2
man sed
-- Andre Tann
-- Um die Liste abzubestellen, schicken Sie eine Mail an: suse-linux-unsubscribe@suse.com Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: suse-linux-help@suse.com
-- Stefan Reisinger http://stefanreisinger.at.tf
Hallo, Am Mit, 16 Aug 2006, Maurice Schmidt schrieb:
Ich möchte eine Datei bearbeiten in der eine Zeichenfolge xhundert mal vorkommt. Also zb. a=x jetzt möchte ich das a=x in a=y umändern.
Du suchst sed (Stream EDitor). sed 's/a=x/a=y/g' datei > datei.neu Achtung: du darfst die Ausgabe von sed nicht in die gleiche Datei umleiten! Neue GNU sed Versionen kennen aber die Option '-i'. Auch mit ed, awk und perl geht sowas (sehr aehnlich). Zum Beispiel: perl -p -i.bak -e 's/a=x/a=y;' datei Schau mal auf http://www.selflinux.de/ ins Kapitel "Shellprogrammierung". -dnh -- Friendship knows no debts.
Am Mittwoch, 16. August 2006 04:02 schrieb David Haller:
sed 's/a=x/a=y/g' datei > datei.neu
Hat wunderbar gelklappt :) heißen Dank!!!!
Schau mal auf http://www.selflinux.de/ ins Kapitel "Shellprogrammierung". Hab ich mir unter Favoriten abgespeichert und habs auch schon überflogen... Sieht recht kompliziert aus aber ich schetze mit ein bischen übung werd ich das auch noch raffen. (muss... will ja auch mal ein gutes shellscript schreiben :) )
So nochmal Dank an euch allen Gruß Maurice
participants (5)
-
Andre Tann
-
David Haller
-
K. Elo
-
Maurice Schmidt
-
Stefan Reisinger