Algunos códigos de estado de error comunes se mencionan a continuación.
Código | Descripción | Comentario |
0 | Indica una ejecución exitosa. | |
1 | Se usa para captar todos los errores generales. | "Divide por cero", "operación no permitida", etc. pueden ser los mensajes de error de este código. |
2 | Indica el abuso de los empotrados de la concha. | "Palabra clave faltante", "No hay dicho archivo o directorio", etc. pueden ser los mensajes de error de este código. |
126 | Se genera cuando el comando no puede ejecutar. | El problema de permiso o la clave requerida no disponible puede generar este código de estado |
127 | Normalmente genera para el problema de la ruta de comando. | "Comando no encontrado" puede ser el mensaje para este código de error. |
130 | Genera un error fatal. | "Script terminado por Ctrl+C" puede ser el mensaje de este código. |
255* | Indica el código de salida fuera del rango. |
Ejemplo-1: Lectura de código de salida del terminal
ps?'La variable de shell se puede usar para mostrar el código de salida de cualquier comando. 'ls -la' es un comando válido y muestra la lista de archivos y carpetas del directorio de trabajo actual. El valor de '$?'será 0 después de ejecutar el comando' ls -la '. 'ls -xyz' es un comando inválido y '$?'devolverá 2 como código de error después de ejecutar el comando.
$ ls -la
$ Echo $?
$ ls -xyz
$ Echo $?
Ejemplo-2: Lectura de código de salida en el script bash
Crear un archivo bash llamado Read_file.mierda Con el siguiente script. En este script, el nombre del archivo se tomará como entrada del usuario y, el número total de líneas, palabras y caracteres de ese archivo se contará utilizando el comando 'WC'. Si el nombre del archivo es válido, entonces el valor de $ status_code es 0 y si el nombre del archivo no es válido, entonces el valor de $ status_code es 1.
Read_file.mierda
#!/bin/bash
echo "Ingrese el nombre de archivo"
leer el nombre de archivo
WC -LWC $ FileName
status_code = $?
echo "La salida del comando 'wc' es: $ status_code"
Ejemplo-3: Uso del valor del código de salida para hacer una tarea específica
Crear un archivo bash llamado Read_month.mierda Con el siguiente código. Aquí, se tomará un valor de fecha como entrada. El nombre del mes se recuperará del valor de la fecha si la fecha de entrada es válida, de lo contrario, aparecerá el mensaje de error de "fecha no válida". 'Si' se usa la condición en el script para verificar el código de estado de salida del comando de fecha. Si la condición es verdadera, entonces se imprimirá el mensaje de éxito y el nombre de la fecha de la fecha. Si la condición es falsa, entonces el mensaje de falla y el código de estado de salida, 1 se imprimirá.
Read_month.mierda
#!/bin/bash
Echo "Ingrese una fecha en el formato: aaa yyy-mm-dd"
leer date_value
current_month = $ (date -d "$ date_value" '+%b')
Si [$? -eq 0]
entonces
echo "el comando de fecha se ejecuta correctamente"
echo "El mes actual es $ Current_Month"
demás
echo "El comando de fecha no se ejecuta con éxito"
Salir 1
FI
Ejecutar el guión.
$ bash read_month.mierda
Ejemplo-4: usando && y || con código de salida
'&&' El operador lógico se utiliza para un código de salida exitoso y '||' El operador lógico se utiliza para un código de salida sin éxito. El siguiente comando imprimirá 'El archivo existe' si libro.TXT El archivo existe en la ubicación actual e imprima el archivo 'no existe' si libro.TXT El archivo no existe en la ubicación actual.
$ Cat Book.txt && echo "El archivo existe" || echo "el archivo no existe"
Diferentes usos del código de estado de salida se muestran en este tutorial. Esperanza, el lector obtendrá un concepto claro sobre el código de estado de salida de Bash después de leer este tutorial.