145971
Goto Top

Notepad++ vergleichen und Differenzen filtern

Hallo zusammen,

ich nutze aktuell notepad++ um 2 csv Dateien zu vergleichen und mir die Unterschiede anzeigen zu lassen.
Gibt es eine Möglichkeit, dass ich dann mit einer Tastenkombination oder ähnliches, alle Zeilen aus einer CSV Datei löschen kann, welche NICHT unterschiedlich sind?
Sodass ich am Ende nur noch die Unterschiede habe?

Oder gibt es ein alternatives Programm was das kann, wenn nicht notepad++?

Danke !

Content-Key: 1718622453

Url: https://administrator.de/contentid/1718622453

Printed on: April 23, 2024 at 11:04 o'clock

Member: SlainteMhath
SlainteMhath Jan 13, 2022 at 10:39:49 (UTC)
Goto Top
Moin,

Alternativen:
"diff" im WSL
oder
das Plugin "Compare" in N++

lg,
Slainte
Mitglied: 149569
149569 Jan 13, 2022 updated at 10:41:35 (UTC)
Goto Top
Oder auch Powershell
$csv1 = Import-CSV "D:\datei1.csv" -Delimiter ";"
$csv2 = Import-CSV "D:\datei2.csv" -Delimiter ";"
Compare-Object  $csv1 $csv2 -Passhru | select * -Exclude SideIndicator | export-csv "D:\fertig.csv" -Delimiter ";" -NoType -Encoding UTF8
Mitglied: 145971
145971 Jan 13, 2022 at 10:41:36 (UTC)
Goto Top
Das Plugin compare habe ich in N++
Aber wie kann ich das o.g. damit dann realisieren ?
Mitglied: 149569
149569 Jan 13, 2022 updated at 12:08:48 (UTC)
Goto Top
Zitat von @145971:

Das Plugin compare habe ich in N++
Aber wie kann ich das o.g. damit dann realisieren ?

Wenn unbedingt über NP++, dann das jN Notepad++ Plugin installieren, dann die beiden zu vergleichenden CSV-Dateien öffnen und dann dieses Javascript mit F5 ausführen (sollten die CSV Dateien keine Überschriften haben, in der zweiten Zeile die Variable auf "false" setzen):
// optional ignore first line in comparison (for csv files)
var ignorefirstline = true;
// -----------------------------------------
if (currentView.files.length < 2){
	alert("At least two files need to be opened.")  
	exit;
}
var result = ;
var headers = '';  
// get content of file 1
currentView.file = 0;
var a1 = currentView.text.split("\r\n");  
// get contents of file 2
currentView.file = 1;
var a2 = currentView.text.split("\r\n");  

if (ignorefirstline){
	headers = a1;
	a1.splice(0,1);
	a2.splice(0,1);
}
// compare array of file1 with file2
a1.forEach(function(item){
	if (a2.indexOf(item) == -1) {
		result.push(item);
	}
});
// compare file2 with file1
a2.forEach(function(item){
	if (a1.indexOf(item) == -1) {
		result.push(item);
	}
});
// create new file
runMenuCmd(41001);
// set view to new file and set content to result array
currentView.file = currentView.files.length;
currentView.text =  ignorefirstline ? (headers + "\r\n" + result.join("\r\n")) : result.join("\r\n");  
Das kannst du dann auch für den Otto-Normalo auf eine Tastenkombination legen.
Mitglied: 145971
145971 Jan 13, 2022 at 12:07:11 (UTC)
Goto Top
Da ich eine Lösung für einen "normalen" User suche, wäre natürlich ein nicht scriptbasierte Variante besser
Mitglied: 149569
149569 Jan 13, 2022 updated at 12:09:37 (UTC)
Goto Top
Zitat von @145971:

Da ich eine Lösung für einen "normalen" User suche, wäre natürlich ein nicht scriptbasierte Variante besser
Meine zweite Lösung kannst du dann auch auf eine Tastenkombination oder in einen Menüeintrag legen face-wink.
Mitglied: 149569
149569 Jan 13, 2022 updated at 12:50:04 (UTC)
Goto Top
Zitat von @145971:

Da ich eine Lösung für einen "normalen" User suche, wäre natürlich ein nicht scriptbasierte Variante besser
Hab dir mal das o.g. Plugin mit einem angepassten Menu so zusammengestellt das du es direkt per Menü nutzen kannst.
Das Zipfile einfach in das Plugin-Verzeichnis von NP++ extrahieren und NP++ neu starten.
https://we.tl/t-jtmPJ9oR5O

Danach findest du die Funktion im "Vergleichen" Menü. Dann zwei Dateien öffnen und eine der Funktionen ausführen.

screenshot

Das Ergebnis wird dann in eine neue Datei geschrieben

screenshot
Member: TomTomBon
TomTomBon Jan 13, 2022 at 13:11:46 (UTC)
Goto Top
Ich liebe dafür Winmerge
https://winmerge.org/

Einfach nur genial und sehr einfach
Mitglied: 145971
145971 Jan 13, 2022 at 16:33:59 (UTC)
Goto Top
Zitat von @TomTomBon:

Ich liebe dafür Winmerge
https://winmerge.org/

Einfach nur genial und sehr einfach

und wie würde es damit gehen ?
Mitglied: 149569
149569 Jan 13, 2022 updated at 22:18:27 (UTC)
Goto Top
Zitat von @145971:

und wie würde es damit gehen ?
🙈 Wow das muss man erst mal schaffen ...
Member: wiesi200
wiesi200 Jan 14, 2022 at 07:01:29 (UTC)
Goto Top
Zitat von @145971:

Zitat von @TomTomBon:

Ich liebe dafür Winmerge
https://winmerge.org/

Einfach nur genial und sehr einfach

und wie würde es damit gehen ?

So wie man es im ersten Screenshot vom Link sieht.
Du machst die 2 Dateien mit dem Programm auch und siehst es.
Member: MaceWindu
MaceWindu Jan 18, 2022 at 14:46:09 (UTC)
Goto Top
Hallo,
TextCrawler kann in der Richtung viel.