Batch Logik Error bei if statement
Hallo zusammen!
ich stehe in Batch grad auf dem wortwörtlichen schlauch... :C
Ich wollte heute ein Überprüfungsmodul in unser in Batch geschriebenes neurales Netzwerk eingliedern, aber aus unerklärlichen gründen will es nicht funktionieren und das Fenster schließt sich.
hier ein ausschnitt aus dem code:
der code überprüft, ob sich an der ersten stelle der variable !Temp1! eine 0 befindet und wenn dies wahr ist, soll der wert von !temp! nur die letzte ziffer sein
Wenn sich irgendjemand mit stringmanipulation auskennt, gerne antworten!
LG Shadowmind
ich stehe in Batch grad auf dem wortwörtlichen schlauch... :C
Ich wollte heute ein Überprüfungsmodul in unser in Batch geschriebenes neurales Netzwerk eingliedern, aber aus unerklärlichen gründen will es nicht funktionieren und das Fenster schließt sich.
hier ein ausschnitt aus dem code:
(...)
set Temp1=!LayerCell%i%!
::-------------------------------
:: hier passiert der fehler
if !Temp1:~0,1!==0 (
::-------------------------------
pause
set Temp1=!Temp1:~-1,1!
)
echo !Temp1!
(...)
der code überprüft, ob sich an der ersten stelle der variable !Temp1! eine 0 befindet und wenn dies wahr ist, soll der wert von !temp! nur die letzte ziffer sein
Wenn sich irgendjemand mit stringmanipulation auskennt, gerne antworten!
LG Shadowmind
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 599700
Url: https://administrator.de/contentid/599700
Ausgedruckt am: 22.11.2024 um 18:11 Uhr
3 Kommentare
Neuester Kommentar
if !Temp1:~0,1!==0 (
Da eine Variable komplett leer sein kann sollte man bei if Vergleichen die Variablen stets mit zusätzlichen Zeichen versehen da es ansonsten zu einem Fehler kommt, bspw. mit Anführungszeichen einkappselnif "!Temp1:~0,1!" == "0" (
Genau so bei dem Setzen von Variablen lieber auf Nummer sicher gehen und diese mit Anführungszeichen sicher machen.
set "Temp1=!LayerCell%i%!"