Zum Inhalt springen

Batch "set" Befehlfrage -- stehe auf dem Schlauch, warum das nicht gehen sollte....


anonym360

Empfohlene Beiträge

Hi,

und zwar habe ich mir gerade diesen Text durchgelesen:

set VAR=vorher

if "%VAR%" == "vorher" (

set VAR=nachher;

if "%VAR%" == "nachher" @echo Es funktioniert!

)

Die Meldung würde nie angezeigt, weil %VAR% in beiden IF-Befehlen

beim Lesen des ersten IF-Befehls erweitert wird, weil es logisch zu diesem

gehört. Daher vergleicht der zweite IF-Befehl "vorher" mit "nachher" was nie

gleich sein kann.

Was ich daran nicht verstehe ist, warum, das nicht funktionieren soll.

Weil doch der zweite set Befehl doch die Variable VAR in nachher umwandelt und dann die letzte if abfrage %VAR (nachher==nachher) dann wahr ist und das Programm dann theoretisch @Echo Es funktioniert" ausgeben müsste.

Stehe gerade auf dem Schlauch und mit der dazugehörigen Erklärung wrde ich auch nicht so drauß schlau.

Könnte mir dass viellleicht bitte einer mal nochmal auf eine andere Art erklären?

Wäre sehr nett.

Danke im Voraus.

Gruß

anonym360

Link zu diesem Kommentar
Auf anderen Seiten teilen

Das Problem besteht darin (ist ein allgemeines Problem von Dos), dass alle Variablen, die du in einem IF-Blockes setzt, diese erst außerhalb des IF-Blockes den entsprechenden Wert haben.

Mach es einfach so:

set VAR=vorher

if "%VAR%" == "vorher" set VAR=nachher

if "%VAR%" == "nachher" @echo Es funktioniert!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...