egrep-Zeilen durchmischen
josef
- sonstiges
Guten Abend alle,
ich weiß dass diese Frage durch nicht self-ergänzend ist, trotzdem frage ich hier mal, da ihr momentan meine einzige Anlaufstelle seid und ich hoffe, dass sich hier jemand findet, der mir helfen kann.
Zum Problem: ich generiere mit Hilfe des Programms "Morphy" http://www-psycho.uni-paderborn.de/lezius/ zwei Wortlisten.
Erstens eine Liste mit Wörtern, die das Diphtong "au" enthalten, zweitens eine Liste mit dem Diphtong "eu". Diese sollen dazu dienen, einem Schüler von mir zu helfen, eben diese beiden Laute beim Verschriften unterscheiden zu können.
Nun würde ich diese beiden Listen gerne in eine *.txt kopieren und per egrep durchmischen lassen, um so einen wirklichen Lernerfolg bei meinem Schüler bewirken zu können und vor allem um das nicht alles von Hand machen zu müssen.
Vielen Dank
Josef
Hallo,
Mit grep kannst Du Dateien durchsuchen. Zu mischen ist es ungeeignet.
Weil es Du bist, gibt es heute mal ein fertiges Prog.
Folgendes Perlscript mischt die Zeilen von 2 Dateien und schreibt sie in eine 3.:
#!/usr/bin/perl -w
use strict;
open(IN,$ARGV[0]);
my @liste1 = <IN>;
close(IN);
open(IN,$ARGV[1]);
my @liste2 = <IN>;
close(IN);
my @result = ();
while(@liste1 || @liste2) {
if(@liste1) {
push @result, splice @liste1, int rand @liste1, 1;
}
if(@liste2) {
push @result, splice @liste2, int rand @liste2, 1;
}
}
open(OUT,">$ARGV[2]");
print OUT join('',@result);
close(OUT);
Unter Linux brauchst Du das Script nur in eine Datei speichern. (zb mischen), dann diese ausführbar machen (chmod 755 mischen) und aufrufen ./mischen eingabe1.txt eingabe2.txt ausgabe.txt
Grüße
Daniel