Cómo almacenar el error estándar a una variable en Bash

Cómo almacenar el error estándar a una variable en Bash

En Bash, puede almacenar la salida de error estándar de un comando a una variable utilizando el '2> y 1' operador y el ps Sintaxis de sustitución de comandos. Aquí '2>' redirige el mensaje de error a & 1 ', que representan a la salida estándar. En el caso de Bash Shell funciona como el dispositivo de salida estándar.

  • Por ejemplo, para almacenar la salida de error estándar del 'ls' comando a una variable con nombre de errores, puede usar el siguiente comando:
    errores = $ (ls-archivo inexistente 2> y 1)  
    Almacene el error estándar en una variable bash

    Alternativamente, puede usar el ps?' Parámetro especial para almacenar el estado de salida de un comando a una variable. El estado de salida es un valor numérico que indica si el comando fue exitoso o no. Un valor de '0' indica el éxito, mientras que un valor no cero indica un error.

  • Por ejemplo, para almacenar el estado de salida del 'ls' comando a una variable con nombre de estado, puede usar el siguiente comando:
    LS-File inexistente  estado = $?  
  • Entonces puedes usar el 'Estado de $' variable para verificar el estado de salida del 'ls' comandar y tomar las medidas apropiadas basadas en el resultado. Por ejemplo: #!/usr/bin/env Bash # pur sus comandos aquí si [$ status -ne 0]; Entonces Echo "el último comando falló con un error."Fi
    123456#!/usr/bin/env Bash # pur sus comandos aquí si el status -ne 0]; Entonces Echo "el último comando falló con un error."Fi

Tenga en cuenta que el ps La sintaxis de sustitución del comando le permite ejecutar un comando y sustituir su salida en su lugar. El '2>' El operador redirige la salida de error estándar del comando al '& 1' transmisión, que es la transmisión de salida estándar. Esto le permite capturar tanto la salida estándar como la salida de error estándar del comando en una sola variable.