Spalte löschen

A

aronadaal

Grünschnabel
Hallo zusammen,
ich sitze nun schon etwas länger an folgendem Problem und bräuchte da einwenig Hilfe. Ich habe eine Datei die folgendermaßen aussieht:
Code:
4	Windows XP Service Pack 2
1112	SuSE Linux 11
6817120

Ich bräuchte nun "einen" Befehl, mit dem ich die erste Spalte abtrennen kann. Ich habe bereits mit sed rumprobiert, aber irgendwas mache ich noch falsch. Vielleicht habt ihr ja eine Idee!

Code:
cat test | sed 's/[\<0-9][0-9:space:]*[\>:space:]//g'

Beste Grüße
aronadaal
 
Hi,

am einfachsten geht das mit cut oder awk. Einfach mal das Forum danach durchsuchen.

mfg,
bytepool
 
@bytepool: Ja das weiß ich. Forumsuche brachte aber nichts brauchbares.

Momentan mach ich's so, müsste doch aber noch einfacher gehn:
cat test | awk '{$1=""; print}' | cut -c 2-
 
Code:
cut -d" " -f 2 foo.txt
?...
Edit:
Eh, ja gut, mit dem Leerzeichen als Trennzeichen ist doof, wenn die zweite "Spalte" auch Leerzeichen hat, aber den delimiter kannst du auch weglassen, dann nimmt er den Tabulator als standard delimiter.

Alternativ eben awk vernuenftig benutzen, da hat man dann nochmal etwas mehr Kontrolle.

Edit2:
Das hier sollte es dann tun:
Code:
cut -f2 -s foo.txt
 
Zuletzt bearbeitet:
ah coole Sache! Dankeschön :)

Jetzt steh ich aber vor dem nächsten Prob ;)
Das cut zerhäckselt mir meine Strings, sodass ich mit
Code:
for VM in `cut -f2 -s tmp/log_$SERVER`; do
  echo $VM
done
die Ausgabe
Code:
Windows
XP
Service
Pack
2
SuSE
Linux
11
bekomme... Hast du da vielleicht auch einen Vorschlag? Schonmal besten Dank im Voraus!
 
Hi,

jo, auch das ist ein bekanntes Problem, einfach zu einer while Schleife umschreiben:
Code:
cut -f2 -s foo.txt | while read line; do 
   echo $line; 
done

Edit:
Im uebrigen zerstueckelt dir da nicht cut die Ausgabe, sondern die Bash. Bei Kommando Substitution ($() und ``) werden die newlines immer durch Leerzeichen ersetzt.

mfg,
bytepool
 
Zuletzt bearbeitet:
ah super! besten Dank für die Aufklärung!
 
Es muesste auch mit der '--complement' Option von cut funktionieren (GNU coreutils 6.10):
'cut --complement -f1 datei.text' sollte dann alles ausser der ersten Spalte ausgeben.
 

Ähnliche Themen

Fedora 20 - Unlösbare Paket-Duplikat Konflikte

Ubuntu X / dbus problem

Domänen Computer können sich nicht mit dem Samba Share verbinden. Alle anderen schon.

Textkonsole mit KMS zu klein

Open-Xchange auf OpenSuse mit Commu. Installer - Compiler Fehler

Zurück
Oben