2017-12-19 2 views
1

In meinem Projekt, ich vergleiche Datei1 mit Datei2 und die Differenz wird in der Ausgabedatei erstellt (Delta zwischen den beiden Dateien). Ich bin mit dem folgenden Befehl, den Unterschied zu finden:Grep: Speicher Erschöpft beim Vergleich zweier Dateien, um das Delta zu finden

grep -v -F -f <file1> <file2> > <output_file> 

Wenn ich Dateien in der Größe um 22MB bin im Vergleich, erhalte ich folgende Fehlermeldung:

grep: memory exhausted 

Wenn ich Dateien mit geringerer Größe bin im Vergleich , es funktioniert gut. Bitte lassen Sie mich wissen, wenn irgendwelche zwicken benötigt wird.

+0

Wie viel freier RAM ist in Ihrer Instanz? Wenn es nichts gibt, dann versuche, etwas aufzuräumen und es sollte funktionieren –

+0

Kein Glück. Ich habe RAM um 8GB. Befreit etwas Speicher. Zeigt immer noch dasselbe – newuser

+0

Was Sie tun können, ist 'agrep' zu verwenden. Aber 'agrep' gibt Ihnen ungefähre Übereinstimmungen. Der Fehler "Speicher erschöpft" ist auf eine große Anzahl von Vergleichen zurückzuführen, die Sie ausführen. –

Antwort

0

auch können Sie diff file1 file2 Befehl verwenden, das wird bessere Option sein.