Sie sind nicht angemeldet.

  • Anmelden

Lieber Besucher, herzlich willkommen bei: MastersForum. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

1

17.03.2011, 12:45

fgrep Befehl [unix, shell]

boar ich quäle mich da grad schon eine stunde mit dem käse ab...

ich soll in einem ordner mittels fgrep befehl stationen zwischen zwei längengraden suchen. die zeilen in den files sind so angeordnet:

Zitat

122010 16.754 47.771 115 Illmitz (Biologische Station)

relevant ist somit der bereich der hier 16.754 lautet...wie kann ich jetzt über fgrep nur die stationen ausgeben lassen, die zB zwischen 13 und 18 liegen? über %fgrep 13 | grep 18 *.txt werden mir alle zeilen angezeigt, die diese beiden werte enthalten, aber die anderen zahlen in der zeile interessieren mich nicht. irgendwie mit cut -c kombinieren? wie müsst das dann ausschauen?

Zitat

Original von nC_$kittle_
Muss ich dann auch Hitler lieber mögen [...] nur weil er Deutscher ist?

Zitat

Original von CF_Icey
ich hab eine Hakenkreuzfahne über meinem Bett und einen Adolf-Hitler-Schlafanzug mit zugehöriger Bettwäsche

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »CF_Ragnarok« (17.03.2011, 12:45)


2

18.03.2011, 01:47

hm niemand? problem doch nicht so trivial wie ich dachte? wär halt rel. dringend :>

sylence

Administrator

Beiträge: 1 861

Wohnort: Dresden

Beruf: GER

  • Nachricht senden

3

18.03.2011, 01:50

Willst du die Werte interpretieren oder einfach nur den zweiten und dritten Wert haben?

Mit

Quellcode

1
awk '{ print $2 $3 }'

könntest du die Ausgabe nur auf die zweite und dritte Spalte reduzieren (zumindest sinngemäß, kanns grad nicht testen).

4

18.03.2011, 13:50

hey ragna

linuxgurufreund von mir sagt folgendes:

Quellcode

1
2
3
cat datei | awk '{ if ( $2 >= 16 && $2 <= 18 ) print $5 }' 

does the job; wobei datei für die Datei mit den Koordinaten steht. 


und dann noch ne mail mit verbesserungen:

Quellcode

1
2
3
4
5
6
7
8
9
Fall 1: zwischen 13 und 18 ;  13 und 18 eingeschlossen 

cat *.txt | awk '{ if ( $2 >= 13 && $2 <= 18 ) print $5 }' ;  

Fall 2: zwischen 13 und 18 ; 13 und 18 nicht eingeschlossen 

cat *.txt | awk '{ if ( $2 > 13 && $2 < 18 ) print $5 }' ; 

ist recht simpel.


Jetzt passts auf jeden Fall.

gl hf damit ;)

5

19.03.2011, 02:23

awesome! ja habs jetzt auch mit awk gemacht, fgrep saugt bälle

thx auch für den mail reminder jens0r :D