Script por lotes: código de retorno

Los códigos de retorno son los códigos devueltos por los programas cuando se ejecutan. Si la línea de comando tiene éxito, debería devolver cero; si no tiene éxito, debería devolver un valor distinto de cero. Si la prueba falla, un valor distinto de cero indica el número de error y el usuario puede intentar resolverlo navegando hasta el mensaje de error.

La prueba también puede devolver un código de salida. El código de salida de un programa o utilidad suele aparecer cuando finaliza o finaliza.

La lista a continuación incluye algunos de los códigos de salida distintos de cero (con sus respectivos errores) que los programas pueden devolver

Código de error Descripción
0 Finalización exitosa del programa.
Este error indica que el símbolo del sistema de Windows ha intentado ejecutar una acción no reconocida
2 Un error que indica que el archivo no se pudo encontrar en la ubicación especificada
3 Un mensaje de error indicó que no se pudo encontrar la ruta especificada.
5 Una indicación de que el usuario no está autorizado para acceder al recurso.
90090×2331 Este error ocurre cuando escribe mal el comando, el nombre de la aplicación o la ruta al configurar una Acción.
2212254950xC0000017-1073741801 El mensaje de error le dice que Windows se quedó sin memoria.
32212257860xC000013A-1073741510  Esto indica que el usuario finalizó la aplicación.
32212257940xC0000142-1073741502  El mensaje que indica que la aplicación se inició en un escritorio al que el usuario actual no tiene acceso

Nivel de error del archivo por lotes:

%ERRORLEVEL% es una variable de entorno que contiene el último nivel de error o código de retorno en el archivo por lotes, es decir, el último código de error del último comando ejecutado. Los niveles de error se pueden verificar usando la variable %ERRORLEVEL% de la siguiente manera:

IF %ERRORLEVEL% NEQ 0 (
  DO_Something
)

Un método común para devolver códigos de error de archivos por lotes es usar el comando EXIT /B %ERRORLEVEL%.

Para códigos de retorno personalizados, use el comando EXIT /B <exitcodes> .

Ejemplo:

 En el siguiente ejemplo, si se cumple la condición, el script terminará con el código de salida 0. Si no se cumple la condición, el código de salida será 1.

if [[ "$(whoami)" != root ]]; then
   echo "Not root user."
   exit 1
fi
echo "root user"
exit 0

Producción:

Producción

Bucles:

Ha habido declaraciones promulgadas secuencialmente en el capítulo de toma de decisiones. Alternativamente, Batch Script también se puede usar para alterar el flujo de control en la lógica de un programa. Estas declaraciones se organizan luego en declaraciones de control de flujo.

Número de serie Bucles Descripción
1 Mientras que la implementación de declaraciones No hay una declaración while directa en Batch Script, aunque se pueden usar etiquetas y una declaración if para implementar este ciclo.
2 Declaración For – Implementaciones de lista Los archivos por lotes pueden hacer un bucle usando la construcción «FOR». Para trabajar con una lista de valores, la declaración ‘for’ requiere la siguiente construcción.
3 Bucle a través de rangos Las declaraciones ‘For’ también pueden moverse a través de rangos de valores. A continuación se presenta una versión general.
4 Implementación de Classic for Loop Tiene la declaración clásica ‘for’ que se encuentra en muchos lenguajes de programación.
5 Implementación de declaración de ruptura Dentro de cualquier lenguaje de programación, la instrucción break se usa para alterar el flujo de control dentro de un bucle. Como parte de las construcciones de bucle, la instrucción break hace que el bucle que lo contiene más interno termine inmediatamente.

Bucle a través de argumentos de línea de comando

Para verificar los argumentos de la línea de comandos, puede usar la instrucción for. Aquí hay un ejemplo de cómo recorrer los argumentos de una línea de comando usando la declaración ‘for’.

for ((c=1; c<=7; c++))
do  
  echo "Welcome $c times"
done

Producción:

Producción

Publicación traducida automáticamente

Artículo escrito por muthuannamalai2002 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *