Hilfe bei cut Befehl

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
fiberkill
Beiträge: 221
Registriert: 28.03.2007 09:08:30

Hilfe bei cut Befehl

Beitrag von fiberkill » 01.09.2010 14:40:08

Hallo zusammen,
ich würde gerne Informationen aus einer Textdate auslesen und die Ausgabe sortieren.
Ich mache folgendes:
ich lasse mir mit cat und grep die gesuchten Zeilen ausgeben. nun möchte ich nur bestimmte Spalten aus der Ergenisszeile haben.
Das alles ist noch kein Problem. Das Problem ist, dass ich die gewünschten Spalte nicht in der Reihenfolge wie sie in der Zeile stehen haben möchte sondern umsoriert.
ein Beispiel:
Das Ergebnis aus meinem cat und grep ist:
Name;Abteilung;Vorname;Telefon;EMail

Ich möchte aber nur folgendes haben:
Name;Vorname;Telefon;Abteilung

Der cut-Befel macht das aber nicht.
Kenn jemand eine Lösung ?

Gruß fk

uname
Beiträge: 12422
Registriert: 03.06.2008 09:33:02

Re: Hilfe bei cut Befehl

Beitrag von uname » 01.09.2010 15:44:19

Vielleicht so

Code: Alles auswählen

cat test.txt | cut -d";" -f1,3,4,2
cut -d";" -f1,3,4,2 test.txt 
Zuletzt geändert von uname am 01.09.2010 15:44:56, insgesamt 1-mal geändert.

gbotti
Beiträge: 846
Registriert: 16.07.2010 14:24:43
Wohnort: München

Re: Hilfe bei cut Befehl

Beitrag von gbotti » 01.09.2010 15:44:34

Hi.

Code: Alles auswählen

cat testdatei | grep wasduhabenwillst | awk -F';' '{print $1 "\;" $3 "\;" $4 "\;" $5 }'
Edit:
Da war ich zu langsam... :) cut is einfacher...
Georg
RTFM, LMGTFY, Orakel... Ach... Warum muss man suchen...
Schrödingers Backup --- "Der Zustand eines Backups ist unbekannt, solange man es nicht wiederherstellt" --- Quelle: Nixcraft

Benutzeravatar
ThorstenS
Beiträge: 2875
Registriert: 24.04.2004 15:33:31

Re: Hilfe bei cut Befehl

Beitrag von ThorstenS » 01.09.2010 16:14:51

gbotti hat geschrieben:

Code: Alles auswählen

cat testdatei | grep wasduhabenwillst | awk -F';' '{print $1 "\;" $3 "\;" $4 "\;" $5 }'
machs besser so:

Code: Alles auswählen

awk -F';' '/wasduhabenwillst/{print $1 "\;" $3 "\;" $4 "\;" $5 }' testdatei

Antworten