Hallo!
Ich habe hier Textdateien die ich vergleichen sollte. Die Dateien enthalten pro Zeile nur jeweils ein Wort, allerdings sind die Zeilen in beiden Files nicht sortiert. Ein diff scheidet hier aus da es Zeilenweise vergleicht. Was gibt es für Tools die das trotzdem erledigen? Vielleicht hat auch jemand ein Idee wie man die Dateien zuvor sortieren kann?
Schlußendlich sollten dur die Zeilen ausgegeben werden die nur in jeweils einem File drinnen sind.
lg,
Steve
[erledigt] Inhalt von Textdateien vergleichen (kein diff)
[erledigt] Inhalt von Textdateien vergleichen (kein diff)
Zuletzt geändert von rksteve am 18.05.2010 12:28:02, insgesamt 1-mal geändert.
Ich? Nein, ich bin keine Signatur, ich mach hier nur sauber...
Re: Inhalt von Textdateien vergleichen (kein diff)
Ich löse das mit folgendem Perl-Programm. Vielleicht etwas grausam programmiert.
Aufruf diff.pl a.txt b.txt
Aufruf diff.pl a.txt b.txt
Code: Alles auswählen
#! /usr/bin/perl
open(FILE,"$ARGV[0]");
@a = <FILE>;
close (FILE);
foreach $ent (@a)
{
$a {$ent} = 1;
}
open(FILE,"$ARGV[1]");
@b = <FILE>;
close (FILE);
foreach $ent (@b)
{
$b {$ent} = 1;
}
foreach $ent (@a)
{
if ($b {$ent} != 1 )
{
print $ent ;
}
}
foreach $ent (@b)
{
if ($a {$ent} != 1)
{
print $ent ;
}
}
Re: Inhalt von Textdateien vergleichen (kein diff)
Hi,
das könnte man jetzt auch noch was ausbauen, indem man beispielsweise die Dateinamen dem Script im Aufruf mit uebergibt, ...
Code: Alles auswählen
#!/bin/bash
sort a.txt >a.tmp
sort b.txt >b.tmp
diff a.tmp b.tmp
rm a.tmp
rm b.tmp
Roland
"Aber wenn du schon so unwissend bist, davon noch nicht gehört zu haben,
so will ich es doch als gut ansehen, daß du lieber einmal töricht fragst,
als weiterhin nichts von etwas zu wissen, das man doch wissen sollte."
aus "Die Edda des Snorri Sturluson", "Gylfis Täuschung"
"Aber wenn du schon so unwissend bist, davon noch nicht gehört zu haben,
so will ich es doch als gut ansehen, daß du lieber einmal töricht fragst,
als weiterhin nichts von etwas zu wissen, das man doch wissen sollte."
aus "Die Edda des Snorri Sturluson", "Gylfis Täuschung"
Re: Inhalt von Textdateien vergleichen (kein diff)
Bashisch gesagt:
Code: Alles auswählen
diff <(<file1.txt sort) <(<file2.txt sort)
Re: Inhalt von Textdateien vergleichen (kein diff)
danke sehr für die Antworten.
Funktioniert tadellos.
lg,
steve
Funktioniert tadellos.
lg,
steve
Ich? Nein, ich bin keine Signatur, ich mach hier nur sauber...