[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Problem mit cut



Am Montag, 21. Juni 2004 06:22 schrieb Andreas Pakulat:
[...]
> echo test t | cut -f1 klappt nicht,
> echo -e "test\tt" | cut -f1 klappt, aber wenn ich ne Datei nehme

Die Option -d wurde ja schon genannt.

> mit
>
> test	1
> test	2
> ...
>
> und dann mittels cat datei | while read l ; do echo $l | cut -f1,
> kriege ich wieder "test 1" (genau, nur ein Leerzeichen) raus.

Um Himmels Willen ;-) Was ist denn das für eine abenteuerliche 
Konstruktion?
Wenn in deiner Datei ein Tab zwischen den einzelnen Feldern steht, 
dann mach es so:
cut -f1 datei

Die Ursache, warum es bei Dir nicht klappt, ist der echo - weil er 
nämlich in jeder Zeile "test" und "1" (oder "2") als eigene 
Argumente kriegt und per Default zwischen einzelne Argumente ein 
Leerzeichen setzt. Beim cut kommt also "test 1" usw. an (mit einem 
Leerzeichen).

Wenn Du aus irgendeinem Grund die Schleife brauchst:
cat datei | while read I; do
  echo "$i" | cut -f1
  ...
done

oder:
while read I; do
  echo "$i" | cut -f1
  ...
done <datei

Jan



Reply to: