la variable no se actualiza dentro si la condición en el script por lotes

  @echo off

  SET CONFIGS_QUASAR1=Q1_1 Q1_2 Q1_3 Q1_4 Q1_5 Q1_6
  SET CONFIGS_QUASAR2=Q2_1 Q2_2 Q2_3 Q2_4 Q2_5 Q2_6
  SET CONFIGS_QUASAR3=Q3_1 Q3_2 Q3_3 Q3_4 Q3_5 Q3_6
  SET CONFIGS_QUASAR0B=Q0B_1 Q0B_2 Q0B_3 Q0B_4 Q0B_5 Q0B_6

  FOR %%A IN (QUASAR1 QUASAR2 QUASAR3 QUASAR0B) DO (
    IF "%%A" == "QUASAR1" (
      SET CONFIGS=%CONFIGS_QUASAR1%
    ) ELSE IF "%%A" == "QUASAR2" (
      SET CONFIGS=%CONFIGS_QUASAR2%
    ) ELSE IF "%%A" == "QUASAR3" (
      SET CONFIGS=%CONFIGS_QUASAR3%
    ) ELSE IF "%%A" == "QUASAR0B" (
      SET CONFIGS=%CONFIGS_QUASAR0B%
    )

    echo %%A
    echo %CONFIGS%
  )

  pause

Soy muy nuevo en la programación de archivos por lotes. He escrito un programa muy pequeño para establecer una variable dentro de una condición 'if', pero la variable ("CONFIGS") no se está actualizando en el programa mencionado anteriormente.

Por favor revise el programa y dígame qué se debe modificar?

Salida del archivo por lotes:

QUASAR1
Q0B_1 Q0B_2 Q0B_3 Q0B_4 Q0B_5 Q0B,_6
QUASAR2
Q0B_1 Q0B_2 Q0B_3 Q0B_4 Q0B_5 Q0B_6
QUASAR3
Q0B_1 Q0B_2 Q0B_3 Q0B_4 Q0B_5 Q0B_6
QUASAR0B
Q0B_1 Q0B_2 Q0B_3 Q0B_4 Q0B_5 Q0B_6

Respuestas a la pregunta(3)

Su respuesta a la pregunta