Dentro de un archivo por lotes en Windows, uso 7-zip como este:
...\right_path\7z a output_file_name.zip file_to_be_compressed
¿Cómo puedo verificar el código de salida 7z
y tomar las medidas apropiadas?
windows-xp
batch
Misha Moroshko
fuente
fuente
Respuestas:
Pruebe un código de retorno mayor o igual a 1:
o
o prueba un código de retorno igual a 0:
Puede usar otros comandos como
GOTO
donde muestroecho
.fuente
0 was unexpected this time.
%ERRORLEVEL%
es 0 a pesar de que ocurrió un error. Sucedió al registrar%ERRORLEVEL%
un archivo cmd. Intentarstart /wait
no funcionó. Lo único que funcionó esif errorlevel 1 (...)
NEQ
lugar deEQU
para apoyar la detección de códigos de retorno negativos? No tengo idea si Windows XP hace eso, pero es una cosa en Windows moderno ...Esto realmente funciona cuando tiene: llamadas App1.exe -> .bat que se ejecuta -> app2.exe
App2 devuelve el nivel de error 1 ... pero debe detectarlo en el .bat y volver a subirlo a la aplicación1 ... de lo contrario .bat come el nivel de error y app1 nunca lo sabe.
Método:
En .bat:
Esta es una comprobación después de app2 para errorlevel. Si> 0, el .bat se cierra y establece el nivel de error en 1 para la aplicación que llama1.
fuente
if %ERRORLEVEL% GEQ 1 EXIT /B %ERRORLEVEL%
.IF %ERRORLEVEL% NEQ 0 EXIT /B %ERRORLEVEL%
Podría ser una mejor opción. Pero realmente necesita saber qué devuelve el programa en caso de errores. Algunos programas devuelven ciertos códigos distintos de cero para tipos especiales de éxito.