.csv Zeile mit batch ersetzen?

Heyo Freunde =)

Mit der Vorahnung, dass der Erzesel wieder die passende Lösung parat hat.. :D

Ich möchte mit meinem Batch script in meiner .csv Datei eine bestimmte Zeile ersetzen oder löschen. Die Datei sieht wie folgt aus:

b0200140	Status 2 
b0200150	Status 1 
b0200160	Status 2 
b0200240	Status 2 
b0200250	Status 2 
b0200260	Status 2 
b0200350	Status 2 
b0200360	Status 2 
b0200450	Status 2 
b0200460	Status 2 

Nun kann ich aus der Tabelle mit der Nummer den jeweiligen Datensatz direkt auswählen und über das Menü auch die History ansehen. Nun möchte ich aber auch den Status ändern. Es gibt 3 unterschiedliche Status Zahlen, Quasi Status 1, Status 2 und Status 3.

Hier erstmal das Menü dazu:

	title %title% - Storage Settings
	color %__@.backgroundcolor%%__@.fontcolor%
	cls
		echo ╔══════════════════════╦══════════════════════╦══════════════════════╦══════════════════════╗
		echo ║  C - Create Storage  ║                      ║                      ║      B - Back        ║
		echo ╠══════════════════════╩══════════════════════╩══════════════════════╩══════════════════════╣
		echo !Table4.HeaderLine!
		echo %Table4.HeadBottom%
	for /f "skip=2 tokens=1-6 delims=[];" %%a in ('find /v /n "" "%appdata%\crs\storage.csv"') do (
    call :replaceTableLineContent Table4.NewLine  "%%~a" "%%~b" "%%~c" "%%~d"
		echo !Table4.NewLine!
	)
		echo %Table4.Bottom%
	echo.
	echo Status 1: Blocked		  Status 2: Active		  Status 3: Damage
	echo.
	echo.
	set /p "LineNo=Enter storage number:"
	if %LineNo%==c goto CAT.HOME.SETTINGS.STORAGE.CREATE
	if %LineNo%==b goto CAT.HOME.SETTINGS.ADMIN
	set ColNo=1
	set "line="
	set /a LineNo-=1
	for /f "delims=; tokens=%ColNo%" %%a in ('more/e +%LineNo% ^< %appdata%\crs\storage.csv') do (
	if not defined line set "line=%%a"
	)
	set ColNo2=2
	set "line2="
	for /f "delims=; tokens=%ColNo2%" %%a in ('more/e +%LineNo% ^< %appdata%\crs\storage.csv') do (
	if not defined line2 set "line2=%%a"
	)
	goto CAT.HOME.SETTINGS.STORAGE.FILTER

Damit kann ich einfach eine Nummer der Aufzählung eingeben und gelange auf eine Seite, auf der ich Details sehe, die Historie einsehen kann (wer was wann warum gemacht hat) und den Status ändern kann.

Wie kriege ich das wohl am besten hin, dass ich entweder nur die ausgewählte Zeile in der .csv überschreibe oder den Status überschreibe?

programmieren, Batch
Batch - Mehrere CSV Dateien in einer for /f durchsuchen?

Ja, ich bin noch immer am Batch. Es ist für mich quasi zu einer Art Herausforderung geworden und ich möchte ein einigermaßen laufendes Script hinkriegen.

Nun habe ich gleich mehrere Probleme:
Ich kann in einer .csv Datei wohl lediglich 4 Spalten nach rechts hin schreiben, danach geht nichts mehr. Ist es da irgendwie möglich, mehr als nur 4 Spalten zu schreiben?

Ich habe quasi als eingang in die csv Datei einmal "EAN", "Location", "Produkt Titel" sowie "Anzahl". Eigentlich hätte ich gerne noch ein paar mehr Informationen zu den Produkten in die csv zu schreiben, quasi noch eine Information, wie das Produkt gelagert ist, quasi "Lagerungsmethode", in die je nach Menüpfad/ Auswahl entweder "Ebay", "Shop", "Service", oder "Storage" rein soll. Ich weiß nicht ob man meiner Idee folgen kann, aber so wäre es eventuell einfacher, denn dann könnte ich alle Informationen in eine einzige .csv Datei schreiben. Bisland wähle ich im Menü vorerst immer aus, welche Lagerungsmethode ich haben will und je nachdem speichert er die Informationen dann in unterschiedliche .csv Dateien.

Daher die Frage, ob es im Bereich

	for /f "useback tokens=1-4 delims=[];" %%a in ("%appdata%\crs\storage1.csv") do (
    if "%%~a"=="%search.EAN%" (

möglich ist da in die suche mehrere csv Dateien einzubeziehen, zB.

	for /f "useback tokens=1-4 delims=[];" %%a in ("%appdata%\crs\storage1.csv";"%appdata%\crs\storage2.csv") do (
    if "%%~a"=="%search.EAN%" (

oder ob es einfacher wäre die Daten in eine .csv Datei zu schreiben und in der Übersicht alles nach Lagerungsmethoden zu filtern?

Ich hoffe ihr könnt mir folgen :D

Computer, programmieren, Batch, cmd, batch-trick

Meistgelesene Beiträge zum Thema Batch