Hallo, ich habe ein vermeindlich einfaches Problem zu lösen, aber irgendwie stehe ich auf dem Schlauch. Ich habe eine Liste mit Personen, die untereinander in einer Liste stehen (reiner Text). Diese Liste möchte ich nun in eine kommaseparierte Form bringen, wobei jeweils vier Zeilen aus der Eingabe eine Zeile (mit vier Spalten) in der Ausgabe darstellen sollen. Also beispielsweise habe ich die folgenden Eingabedaten (fiktiv): Müller Wolfgang EDV 4.26 Admin Intranet/Notes Schmitz Peter Controlling 5.11 Debitorenbuchhaltung So und jetzt soll die Ausgabe so aussehen: Müller,Wolfgang,EDV,4.26,Admin Intranet/Notes Schmitz,Peter,Controlling,5.11,Debitorenbuchhaltung Hat jemand eine Idee, wie ich das mit sed, awk oder Perl machen kann? Vielen Dank und schöne Grüße, Werner.
* Werner Schalk
Hallo,
ich habe ein vermeindlich einfaches Problem zu lösen, aber irgendwie stehe ich auf dem Schlauch. Ich habe eine Liste mit Personen, die untereinander in einer Liste stehen (reiner Text). Diese Liste möchte ich nun in eine kommaseparierte Form bringen, wobei jeweils vier Zeilen aus der Eingabe eine Zeile (mit vier Spalten) in der Ausgabe darstellen sollen. Also beispielsweise habe ich die folgenden Eingabedaten (fiktiv):
Müller Wolfgang EDV 4.26 Admin Intranet/Notes Schmitz Peter Controlling 5.11 Debitorenbuchhaltung
So und jetzt soll die Ausgabe so aussehen:
Müller,Wolfgang,EDV,4.26,Admin Intranet/Notes Schmitz,Peter,Controlling,5.11,Debitorenbuchhaltung
Hat jemand eine Idee, wie ich das mit sed, awk oder Perl machen kann?
#!/usr/bin/perl -w
use strict;
use warnings;
my $step_count = 0;
open(IN, $ARGV[0]) || die "can't open input file $!\n";
while (<IN>) {
next if /^$/;
chomp;
$step_count++;
if ($step_count == 5) {
print "$_\n";
$step_count = 0;
} else {
print "$_,";
}
}
close(IN);
cu
--
echo '@a=(A..Z,a..z," ");$t="a"x16;{for($x=0,$|=$n=30; $n--;){for($l=$t;
1
Hallo, On Fri, 20 Jun 2003, Werner Schalk wrote:
Hat jemand eine Idee, wie ich das mit sed, awk oder Perl machen kann?
TMTOWTDI :) ==== sh ==== cat Datei | { read ln; read fn; read a; read b; read c; echo "$ln,$fn,$a,$b,$c"; } ==== ==== awk ==== awk '{ ln = $0; if(ln) { getline fn; getline a; getline b; getline c; print ln","fn","a","b","c; } else { exit 0; } }' < Datei ==== HTH, -dnh --
Recovery ist, wenn Kunden anrufen und nach solchen Leuten verlangen. Nun, ohne deinen Namen zu sehr verhunzen zu wollen.... aber es klingt bestimmt lustig, wenn du dich einem Mann vorstellst, der auch Dirk heißt. -- Dirk Nimmich und Adrian Knoth in dasr
participants (3)
-
David Haller
-
Remo Behn
-
Werner Schalk