Jump to content

Aleria

Members
  • Gesamte Inhalte

    1
  • Registriert seit

  • Letzter Besuch

Alle erstellten Inhalte von Aleria

  1. Hallo zusammen, kurz zu dem, was ich mit der Batch erreichen möchte: Ich versuche anhand einer Liste (txt Datei) zeilenweise die Einträge in einer anderen Liste (txt Datei) zu finden. Wenn die Einträge gefunden werden, geh zu OK und mach damit weiter was danach kommt. Wenn die Einträge nicht gefunden werden, dann geh zu NOK und schreibe eine Datei. Ich hab dabei schon folgenden Code gebastelt: @echo off set Datei=C:\temp\test.txt set TransLog=C:\temp\TransLog.txt set PruefNOK=C:\temp\PruefNOK.txt set PruefOK=C:\temp\PruefOK.txt for /f %%a in (%Datei%) do ( findstr /i %%a %TransLog% echo %errorlevel% if errorlevel == 1 (echo %%a no files found %errorlevel% goto NOK >> %PruefNOK%) if errorlevel == 0 (echo %%a files found %errorlevel% goto OK >> %PruefOK%) ) :NOK echo Nicht alles ok >> %PruefNOK% exit :OK echo Alles OK >> %PruefOK% exit Die ganzen Echos und, dass er alles in die Dateien schreiben soll, habe ich zu Kontrollzwecken eingebaut, um mir den Ablauf in der CMD anzuschauen. Mal funktioniert das Script und mal nicht: Wenn eine Zeile in der Ausgangsdatei (Datei) ist, aber im Translog nicht, führt er die zwar im NOK Log auf, aber genauso im OK Log. Das Errorlevel ist 0 und es werden auch zwei Log Dateien geschrieben. Wenn die Zeilen aus der Ausgangsdatei alle gefunden wurden, dann schreibt er sie ins OK-Log, schreibt aber auch ein NOK-Log. Auch hier werden wieder zwei Logs geschrieben und das Errorlevel ist weiterhin 0. Mir scheint es ein wenig so, dass die goto komplett ignoriert werden. Ich hoffe ich konnte es einigermaßen verständlich erklären. Kann mir hier einer weiterhelfen? Vielen Dank. Hat sich erledigt... Hatte einen ordentlichen Denkfehler... Trotzdem danke :)
×
×
  • Neu erstellen...