Veröffentlicht 22. April 200817 j Hallo zusammen, ich brauch ma kurz eure Hilfe. Unzwar hab ich hier ein Haufen config- Files die ich updaten muß. Dazu bietet sich wunderbar ein kleines Script an. Unzwar muß jeweils ein Eintrag abgeändert und ein weiterer muß nach einem Bestimmten Kriterium eingefügt werden. Das ersetzen hab ich grad schon mit sed hingekriegt. Nur das Einfügen will nich so ganz klappen. Find imma nur was, wo ich entweder eine feste Zeilennr. angeben muß (die leider nicht übereinstimmen) oder am Anfang bzw. Ende der Datei. Könnt ihr mir da nen bissel auf die Sprünge helfen?? Grüße
22. April 200817 j Hi, vielleicht helfen dir ja die Stichwort Regular Expressions und substition weiter. Hier mal ein Link. ciao, vic
23. April 200817 j Hallo, wo möchtest Du denn innerhalb der Dateien etwas einfügen bzw. wie identifizierst Du die Stelle, an der etwas eingefügt werden soll? Nic
23. April 200817 j Hi, also es gibt da nen Kriterium was in jedem File vorkommt (leider nur nie in der selben Zeile). Wär ja auch zu einfach gewesn . Nachdem ich denn gestern wohl ziemlich gewaltig auf der Leitung stand :upps, kam mir gestern Abend der Einfall, das ich ja die Zeilennumer dieses Kriteriums ermitteln könnte, dann die Zeilennr. +1 nehme, dies Ergebnis an sed übergebe, der mir denn dort meinen Eintrag vornimmt. Sollt ja eigentlich irgendwie möglich sein, Oder? Grüße
23. April 200817 j also die zeilennummer nach der zeile nach der du suchst: grep -n $suchbegriff $file |awk -F : '{print $1 + 1}' brauchst aber garnet, ist nur ein einzelner kleiner sed befehl .... $1 ist der suchbegriff, $2 die zeile die eingesetzt werden soll sed '/^$1/a\$2' $file viel spaß
24. April 200817 j Ah, Danke. Ich hatts aber scho teilweise selbst hingekriegt. Aber der kleine Einzeile sieht wesentlich besser aus. Grüße
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.