Archiv verlassen und diese Seite im Standarddesign anzeigen : Per Skript eine Zeile in einer Datei ersetzen
muellners
09.02.2005, 13:59
versuche gerade nach ausführung eines Skript´s , die erste Zeile einer Datei durch einen neuen Eintrag zu ersetzen.
Inhalt der Datei:
Aktuell seit 09.02.2005
Zeile zwei
Zeile drei
Zeile vier
Wie gesagt, nur Zeile eins soll durch neuen Eintrag ersetzt werden.
Wieso Perl?
Gibt mehrere Moeglichkeiten auch ohne Perl.
Dateiname: test
tail +2 test # Alles nach der ersten Zeile
Oder mit sed:
1a\
neuer text
1d
sed -f sedscript test
muellners
09.02.2005, 15:17
Bitte nicht falsch verstehen, nicht "Perl"
Mittels Skript nur die erste Zeile einer Datei ersetzen, der Rest des Inhaltes muss erhalten bleiben
so wie
echo "Neue erste Zeile" >> Zieldatei
nur nicht anhängen sondern an den Anfang stellen.
Du kommst fast nicht drum um eine temporäre Datei zu haben. Es sei denn, dein sed supportet inline editing! Wenn du weisst, wie die erste Zeile heisst, kannst du diese dann direkt mit sed ersetzen.
Ansonsten:
echo "neue erste zeile" >> neue_datei
tail +2 alte datei >> neue_datei
mv neue_datei alte_datei
Powered by vBulletin® Version 4.2.0 Copyright ©2013 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.