Zeile n bis m aus Datei lesen

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Spagetti
Beiträge: 22
Registriert: 05.11.2005 10:41:34

Zeile n bis m aus Datei lesen

Beitrag von Spagetti » 21.12.2005 11:13:53

Hi,

ich suche nach einer Möglichkeit innerhalb eines Bashscriptes Dateien nur abschnittsweise zu lesen. Zum Beispiel von Zeile 5 bis Zeile 20, allgemeiner: Zeile n bis m.
Kann mir da jemand helfen ??

Danke :)

Benutzeravatar
herrchen
Beiträge: 3257
Registriert: 15.08.2005 20:45:28
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Berlin

Re: Zeile n bis m aus Datei lesen

Beitrag von herrchen » 21.12.2005 11:37:28

Spagetti hat geschrieben: ich suche nach einer Möglichkeit innerhalb eines Bashscriptes Dateien nur abschnittsweise zu lesen. Zum Beispiel von Zeile 5 bis Zeile 20,
cat file | head -n 20 | tail -n 16

herrchen

Spagetti
Beiträge: 22
Registriert: 05.11.2005 10:41:34

Beitrag von Spagetti » 21.12.2005 11:43:36

jau !!
Das ist gut

Danke :-)

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von gms » 21.12.2005 11:55:41

noch ein kleiner Erweiterungsvorschlag:

Code: Alles auswählen

gms@gms1:~$ function catb() { local N=$2; local M=$3; head -n "$M" $1 | tail -n $(($M-$N+1)); }
gms@gms1:~$ catb x.txt 5 20
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Gruß
gms

Spagetti
Beiträge: 22
Registriert: 05.11.2005 10:41:34

Beitrag von Spagetti » 21.12.2005 12:10:17

Hey,
das ist noch besser. Danke !

firestonez
Beiträge: 73
Registriert: 23.03.2004 11:14:19

Beitrag von firestonez » 21.12.2005 13:11:50

wie wär's mit:

Code: Alles auswählen

$ sed -n '1,4p' test
1
2
3
4

Spagetti
Beiträge: 22
Registriert: 05.11.2005 10:41:34

Beitrag von Spagetti » 21.12.2005 13:13:32

Oi, die werden ja immer besser.
Das ist wohl die eleganteste Lösung bisher.

Thanks :-)

Antworten