piotrney

2 Csv -Dateien zum Teil zusammenfügen

Hallo,
Ich habe die Frage schon mal gestellt und aus versehen auf gelöst geklickt.
Zum Anliegen :
Ich erzeuge täglich zwei bis drei Csv -Dateien.
Je nach Aufgabe benötige ich alle drei oder nur zwei Cvs.
Aus erster werden alle Informationen benötigt und aus der Zweiten und/oder dritten nur die zweite Spalte und das soll mit bat erfolgen:

Erste csv-Datei: Artikel
Artnr;Beschreibung;kkategorie
123;neu;436
234;gebraucht; 654
Zweite csv-Datei : Kategorie
Artnr ; ekategorie
123;123456
234;456789
Ergebnis :
Artnr;Beschreibung ;kkategorie ;ekategorie
123;neu ;436 ;123456
234;gebraucht ;654 ;456789
Über eine Antwort wäre ich sehr dankbar!
Gruß
Peter
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 321653

Url: https://administrator.de/forum/2-csv-dateien-zum-teil-zusammenfuegen-321653.html

Ausgedruckt am: 01.05.2025 um 06:05 Uhr

131381
131381 21.11.2016 aktualisiert um 16:37:16 Uhr
Goto Top
Ich habe die Frage schon mal gestellt und aus versehen auf gelöst geklickt.
Schon mal gelesen?
Wie kann ich einen Beitrag als gelöst markieren?
Status der Frage zurücksetzen
Wurde ein Beitrag aus Versehen als "gelöst" markiert, kann dies durch Klicken auf "Bearbeiten" im Ursprungs-Beitrag, und dann durch Entfernen des Hakens bei "Diese Frage gilt als gelöst" in der rechten Navigation unter Optionen, wieder zurückgenommen werden.  
...
@echo off & setlocal
set "artikel=c:\artikel.csv"  
set "kategorien=c:\kategorien.csv"  
set "ausgabe=c:\ausgabe.csv"  
for /f "usebackq tokens=1,* delims=;" %%a in ("%artikel%") do (  
   >>"%ausgabe%" (for /f "tokens=2 delims=;" %%c in ('findstr /ibc:"%%a" "%kategorien%" 2^>nul') do echo %%a;%%b;%%c)  
)

Gruß
Piotrney
Piotrney 21.11.2016 um 16:54:53 Uhr
Goto Top
Danke für den Code!
Leider befindet sich in der neuen Datei nur die zweite Spalte von Kategorien und davor sind ";"
131381
131381 21.11.2016 aktualisiert um 17:07:53 Uhr
Goto Top
Nö, hier gehts. Das Script geht davon aus das ArtNr immer die erste Spalte ist.
Aber deswegen sag ich ja, nimm Powershell, denn wenn du da irgendwelche Sonderzeichen drin hast fliegt dir das ganze um die Ohren, auch wenn die Files im Unicode oder UTF8 vorliegen.
Batch ist für solche Aufgaben einfach nicht mehr das Mittel der Wahl.
Piotrney
Piotrney 21.11.2016 um 18:31:25 Uhr
Goto Top
Hmm... Hab noch irgendwas mit Power Shell gemacht.
Kann man die PS- Dateien auch problemlos ohne Software ausführen? Mein Plan ist es später unbeaufsichtigt auszuführen?
131381
Lösung 131381 21.11.2016 aktualisiert um 18:55:32 Uhr
Goto Top
Zitat von @Piotrney:

Hmm... Hab noch irgendwas mit Power Shell gemacht.
Kann man die PS- Dateien auch problemlos ohne Software ausführen?
Logisch, PS is seit Vista per Default mit an Bord.

Mein Plan ist es später unbeaufsichtigt auszuführen?
Kein Thema
Aber einen Powershell-Kurs können wir hier nicht liefern, dazu gibts genügend Input bei Google z.B.
https://mva.microsoft.com/de-de/training-courses/windows-powershell-3-0- ...
Piotrney
Piotrney 22.11.2016 um 22:44:18 Uhr
Goto Top
Hat heute funktioniert! Danke