Tildel værdi til variabel i batch-fil uden setlocal EnableDelayedExpansion

Hvordan kan man tildele en værdi til en variabel inden for en IF NOT DEFINED blok i en batch-fil uden at bruge setlocal EnableDelayedExpansion?

For at tildele en værdi til en variabel inden for en IF NOT DEFINED blok i en batch-fil uden at bruge setlocal EnableDelayedExpansion, kan du bruge IF NOT DEFINED til at kontrollere variablen og derefter tildele værdien inden for blokken.

Sådan tildeler du en værdi til en variabel inden for en IF NOT DEFINED blok i en batch-fil uden at bruge setlocal EnableDelayedExpansion

For at tildele en værdi til en variabel inden for en IF NOT DEFINED blok i en batch-fil uden at bruge setlocal EnableDelayedExpansion, kan du følge disse trin:

  1. Brug IF NOT DEFINED til at kontrollere, om variablen allerede er defineret.
  2. Indsæt kommandoen til at tildele en værdi til variablen inden for blokken.

Her er et eksempel på, hvordan du kan gøre det:


@echo off
IF NOT DEFINED myVariable (
    set myVariable=SomeValue
)
echo %myVariable%

Forklaring:

  • @echo off: Slår kommando-echoing fra, så kommandoerne ikke vises i konsollen.
  • IF NOT DEFINED myVariable: Kontrollerer, om variablen myVariable ikke er defineret.
  • ( set myVariable=SomeValue ): Hvis variablen ikke er defineret, tildeles værdien SomeValue til myVariable.
  • echo %myVariable%: Viser værdien af myVariable i konsollen.

Bemærk, at denne metode fungerer uden at aktivere forsinket ekspansion, hvilket kan være nyttigt i visse situationer, hvor forsinket ekspansion kan forårsage problemer.