ForumTest in die Mitte einer File schreiben?!?!?
Holger Müller – Freitag, 05. Oktober 2007 17:10 Uhr

Hallo zusammen!

Ich werde momentan vom meinem Arbeitgeber in UNIX ausgebildet. Ich bin im aktuellen Kurs fast am Ende und muss einige Aufgaben bewältigen. Ich stehe nun vor dem Problem, dass ich die Ausgabe eines Scriptes in die MITTE einer anderen Datei schreiben soll.

Meine Idee ging dahin, die Lines mit wc -l zählen zu lassen, aber ich weis nicht, wie ich dann in die Datei schreibe.

Kann mir jemand einen Wink mit dem Zaunfahl geben?

DANKE und Gruß
Holger

3 Antworten
Matthias Pertl – Freitag, 05. Oktober 2007 17:22 Uhr

Hallo Holger,

versuche mal head und tail!

Gruss,
Matthias

HackRevDD – Freitag, 05. Oktober 2007 17:24 Uhr

Hi Holger!

Also ich würde das mit dem Head-Kommando versuchen, das kann mit der “-n”-Option so beinflusst werden, daß es eine bestimmte Anzahl von Zeilen ausgibt. Auch sehr interessant sind IMHO für deinen Fall auch die vorangestellten Minuszeichen…

$ man head

hilft weiter :-)

Grüße,
HackRevDD

Ugglan – Freitag, 05. Oktober 2007 22:09 Uhr

Hallo Holger,

mit SED sollte das gehen. Ist ja immer noch, obwohl meistens nur zum suchen+ersetzen verwendet, ein Stream EDitor.

Ich habe mal kurz in [1] reingeschaut.

sed -n -e ‘1,10p’ DATEI

sollte z.B. die ersten zehn Zeilen der DATEI ausgeben,

sed -n -e ’11,$p’ DATEI

alle Zeilen von 11 bis zum Ende.

Sollte, ich sitze leider gerade an einer Windows-Kiste und kann das daher nicht ausprobieren. Vorsicht, die Dokumentation beschreibt das GNU-sed, unter Unix hast Du evtl. eine andere Version mit anderer Syntax/Funktionalität.

Wenn Du öfter sowas machst, kann es sich lohnen, tiefer in sed einzusteigen. Es sind schon ganze Programme mit sed geschrieben worden…

Viel Erfolg,

Ugglan

[1] http://www.tty1.net/sed-tutorium/html/index.html