scripts script resueltos paso pasar parametros hacer español ejercicios ejemplos como comando bash exit-code local-variables command-substitution

script - salir del código de comando de sustitución en la asignación de variable local bash



scripts linux ejercicios resueltos (1)

Esta pregunta ya tiene una respuesta aquí:

¿Cómo puedo verificar el código de salida de una sustitución de comando en bash si la asignación es a una variable local en una función?
Por favor vea los siguientes ejemplos. El segundo es donde quiero comprobar el código de salida.
¿Alguien tiene una buena solución alternativa o correcta para esto?

$ function testing { test="$(return 1)"; echo $?; }; testing 1 $ function testing { local test="$(return 1)"; echo $?; }; testing 0


Si observa el archivo man para local (que en realidad es solo la página del manual BASH builtins), se trata como su propio comando, que da un código de salida de 0 al crear con éxito la variable local. Así que local está sobrescribiendo el último código de error ejecutado.

Prueba esto:

function testing { local test; test="$(return 1)"; echo $?; }; testing

EDITAR: Seguí adelante y lo probé por ti, y funciona.