La Red de Conocimientos Pedagógicos - Currículum vitae - asdfasdf

asdfasdf

(El nivel de error entre paréntesis es siempre 0)

Por supuesto. Porque:

if EXIST c:\1.txt (

dsfadsf

echo %errorlevel%

)

Este es un comando.

Si no hay un retraso en la variable de inicio, lo que %errorlevel% determina es el valor de retorno del comando anterior si: dir > c:\1.txt

Porque la ejecución debe ser exitoso, por supuesto. El nivel de error es siempre 0.

Para solucionar este problema.

El retraso de la variable de inicio se puede solucionar.

El código es el siguiente:

@echo off

setlocal enableelayedexpansion

dir > c:\1.txt

si EXISTE c:\1.txt (

dsfadsf

echo !errorlevel!

)

asdfasdf

echo %errorlevel%

pausa