15 C
Madrid
sábado, octubre 25, 2025
spot_img
spot_img

Cómo usar códigos de salida de Linux para solucionar problemas de su sistema Linux

Los códigos de salida, todavía conocidos como códigos de retorno o estados de salida, son señales numéricas que un software, comando o script envía nuevamente al sistema operante (o proceso de llamamiento) cuando finaliza la ejecución. No necesita cavar a través de archivos de registro potencialmente largos para diagnosticar una rotura; un código de salida a menudo proporciona una pista rápida sobre la naturaleza del problema.

La convención internacionalmente aceptada es que cuando un software se ejecuta con éxito, devuelve un código de salida de 0. Cualquier otro número, generalmente adentro del rango standard de 1 a 255, indica que poco salió mal.

La forma más sencilla de repasar el código de salida del zaguero comando ejecutado de primer plano en capas de unix (como Bash o ZSH) es inspeccionar la variable de shell específico $?. Por ejemplo, primero ejecute cualquier comando y luego verifique su código de salida:

ls /nonexistent_directory
echo $?
Códigos de salida de Shwoing del último comando ejecutado

El eco $? El comando muestra el código de salida algorítmico almacenado en el $? variable. Si ve 0, significa el comando susodicho completado con éxito. Un valía diverso de cero como 1, 2 o 127 indica un error, y el número específico ofrece una pista sobre el tipo de problema, tal vez un archivo faltante, un directorio inexistente o permisos insuficientes.

Depuración de su script con códigos de salida

Los códigos de salida son especialmente aperos cuando escribes scripts de shell. Ayudan a su argumento a determinar si poco salió adecuadamente o mal, lo que le permite atreverse qué hacer a continuación.

LEER  Cómo usar la búsqueda semántica en Windows Copilot+ PCS

Aquí hay un ejemplo simple que copia un archivo en una carpeta de copia de seguridad e informa si la copia fue exitosa:

#!/bin/bash
# Try to copy the file
cp important_file.txt backup/

# Check if the copy was successful using the exit code ($? holds the exit code from the last command)
if ( $? -eq 0 ); then
echo "Backup successful!"
else
echo "Backup failed with exit code $?"
exit 1 # Exit the script with an error code to indicate something went wrong.
fi

Cuando el cp Se ejecuta el comando, devuelve un código de salida. Un código de salida de 0 significa que todo salió adecuadamente. Si el código no es 0, poco salió mal, y el script imprime un mensaje de error y sale con un código de 1.

Configurar sus propios códigos de salida

Encima de repasar los códigos de salida de los comandos, puede puntualizar sus propios códigos de salida para indicar diferentes tipos de errores. Esta maña hace que sus scripts sean más informativos, lo que permite que cualquiera que los use entienda exactamente qué tipo de problema ocurrió.

Considere este argumento:

#!/bin/bash
# Verify that an argument (filename) is provided.
if ( -z "$1" ); then
echo "Usage: $0 "
exit 1 # Exit code 1 indicates that no argument was provided.
fi

# Check if the file provided as the first argument exists.
if ( ! -f "$1" ); then
echo "Error: File not found"
exit 2 # Custom exit code 2 indicates that the file was not found.
fi

Si determinado ejecuta su script y rotura, puede consultar el código de salida para determinar el error exacto. En este ejemplo, el código de salida 1 señala que el sucesor no proporcionó un argumento requerido, mientras que el código de salida 2 indica explícitamente que no se encontró el archivo. Este enfoque estructurado es especialmente útil cuando su script es parte de un sistema más excelso o cuando otro script depende de su salida.

LEER  Exclusivo: MacOS 26 sugerencias beta en actualizaciones de Mac selladas en las tiendas de Apple

Índice de códigos de salida comunes

Si adecuadamente los diferentes programas pueden puntualizar sus propios códigos de salida, hay algunos patrones comunes que verá en muchas herramientas de recorrido de comandos, especialmente en los sistemas de Linux y Unix. Estos son algunos de los más frecuentemente encontrados:

  • 0: ¡Todo está adecuadamente! El software se ejecutó sin ningún problema.
  • 1: Poco salió mal, pero el error no es específico. Esto es como la trampa de los códigos de salida.
  • 2: Mal uso de Shell Buildins. Esto puede ocurrir si usa un comando incorrectamente, como olvidar los parámetros requeridos.
  • 126: El comando existe, pero no tienes permiso para ejecutarlo.
  • 127: Comando no antagónico. Esto significa que el comando no existe o no está en la ruta del sistema. Verifique su ortografía.
  • 128: Argumento de salida no válido. Has usado un número que no tiene sentido como código de salida.
  • 130: Software terminado por Control + + do. Esto sucede cuando detiene manualmente un software.
  • 137: Condición fuera de memoria (OOM).
  • 255: El software intentó devolver un código de salida fuera del rango válido.

Algunos programas específicos tienen sus propios códigos de salida únicos. Por ejemplo, GREP devuelve 0 cuando encuentra coincidencias, 1 cuando no encuentra ninguna coincidencia y 2 cuando hay un error. Encima, los desarrolladores pueden usar técnicamente casi cualquier número (generalmente 0 a 255 en sistemas similares a Unix).

Comandos de encadenamiento basados ​​en el éxito o el fracaso

Bash todavía proporciona dos operadores aperos && y || que le permite unir comandos juntos dependiendo de si el susodicho tuvo éxito o falló:

  • && (y cámara): ejecuta el sucesivo comando solo si el susodicho tuvo éxito (código de salida 0).
  • || (O cámara): ejecuta el sucesivo comando solo si el susodicho falló (código de salida no cero).
LEER  Cómo eliminar "preguntar copiloto" del menú de Windows 11 Haga clic con el botón derecho

Por ejemplo, suponga que desea crear un directorio y luego cambiar inmediatamente a él. Si la creación del directorio rotura o cambia en él no funciona, es posible que desee mostrar un mensaje de error:

mkdir new_directory && cd new_directory || echo "Failed to create and access directory"

Aquí, mkdir new_directory intenta crear la carpeta. Si eso funciona, el código se ejecuta inmediatamente cd new_directory. Si cualquier paso rotura, el || El cámara entra e imprime el mensaje de error.

Pensamientos finales

Los códigos de salida pueden parecer un pequeño detalle, pero son parte de lo que hace que las herramientas de recorrido de comandos sean tan poderosas. Crean un estilo popular para que los programas se comuniquen sobre el éxito y el fracaso, lo cual es esencial para construir sistemas complejos.

Si eres nuevo en el trabajo de la recorrido de comandos, comience por acostumbrarte a repasar echo $? Cuando los comandos no se comportan como se esperaba. Pronto, utilizará códigos de salida en sus propios scripts y apreciará este sistema de comunicación simple pero efectivo.

spot_img

Artículos relacionados

spot_img

DEJA UNA RESPUESTA

Por favor ingrese su comentario!
Por favor ingrese su nombre aquí

Últimos artículos