+ Antworten
Ergebnis 1 bis 2 von 2

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

Diskussion über Batch "set" Befehlfrage -- stehe auf dem Schlauch, warum das nicht gehen sollte.... in Algorithmik der Kategorie Programmierung; Hi, und zwar habe ich mir gerade diesen Text durchgelesen: set VAR=vorher if "%VAR%" == "vorher" ( set VAR=nachher; if ...

  1. #1
    Reg.-Benutzer
    Reg.-Datum
    12.10.2011
    Beiträge
    2

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

    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

  2. #2
    Reg.-Benutzer
    Reg.-Datum
    05.10.2006
    Beiträge
    41

    Standard

    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!

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

     

Ähnliche Themen

  1. Welche Programmiersprachen sollte ein Anwendungsentwikler alle "Sprechen"?
    Von Laptopgamer im Forum Ausbildung im IT-Bereich
    Antworten: 26
    Letzter Beitrag: 23.10.2008, 13:22
  2. Antworten: 3
    Letzter Beitrag: 10.04.2006, 11:30
  3. Warum bezeichnung "FISI" und nicht FIW" (Fachinformatiker-Wirtschaft..")?
    Von fabian905 im Forum Ausbildung im IT-Bereich
    Antworten: 12
    Letzter Beitrag: 27.01.2006, 00:53
  4. Antworten: 37
    Letzter Beitrag: 17.07.2003, 12:30
  5. Antworten: 3
    Letzter Beitrag: 14.05.2002, 18:13

Die häufigsten Suchbegriffe für diese Seite:

batch set befehl

batch set a befehl

set befehl im batch

setvar delphi

batch set funktioniert nicht

batch set !

was bedeutet batch befehl set a