script español ejemplos linux bash unix scripting

linux - español - ¿Qué hace `set-x`?



shell script windows (2)

set -x

Imprime un rastro de comandos simples, para comandos, comandos de caso, comandos de selección y aritmética para comandos y sus argumentos o listas de palabras asociadas después de que se expanden y antes de que se ejecuten. El valor de la variable PS4 se expande y el valor resultante se imprime antes del comando y sus argumentos expandidos.

Ejemplo

set -x echo `expr 10 + 20 ` + expr 10 + 20 + echo 30 30

set +x echo `expr 10 + 20 ` 30

El ejemplo anterior ilustra el uso de set -x . Cuando se usa, la expresión aritmética anterior se ha expandido. Podríamos ver cómo se ha evaluado una línea singe paso a paso.

  • Primer paso expr ha sido evaluado.
  • Se ha evaluado el echo segundo paso.

Para saber más sobre set → visite este enlace

cuando se trata de su script de shell,

[ "$DEBUG" == ''true'' ] && set -x

Es posible que su script haya estado imprimiendo algunas líneas de información adicionales cuando el modo de ejecución se seleccionó como DEBUG . Tradicionalmente, las personas solían habilitar el modo de depuración cuando se llamaba un script con argumento opcional como -d

Tengo un script de shell con la siguiente línea:

[ "$DEBUG" == ''true'' ] && set -x


set -x habilita un modo del shell donde todos los comandos ejecutados se imprimen en el terminal. En su caso, se usa claramente para la depuración, que es un caso de uso típico para set -x : imprimir cada comando a medida que se ejecuta puede ayudarlo a visualizar el flujo de control del script si no funciona como se esperaba.