Zitat:
Zitat von DarkThoughts ... Code: line_number=`wc -l datei.txt`
head -n $line_number datei.txt > datei.txt
... |
Damit wirst Du hinterher eine leere datei.txt haben.
Ich sehe auch wenig Sinn darin, mit head alle Zeilen der Datei (wc -l datei.txt) auszugeben. Da müsste doch wenigstens noch 1 abgezogen werden, oder nicht?
Abgesehen davon kann man mit sed auf sehr einfache Weise die letzte Zeile einer Datei abschneiden:
Code:
sed -e '$d' infile > outfile
oder von Zeile n bis zum Dateiende abschneiden
Code:
sed -e 'n,$d' infile > outfile
oder diese Zeilen ausgeben und die anderen löschen
Code:
sed -ne '2,$p' infile > outfile
usw.
Die Lösung von martini finde ich da doch etwas zu aufwändig.