Veja a expansão das variáveis ​​do Bash para depuração?

12

Existem ferramentas / truques disponíveis para expandir variáveis ​​para facilitar a leitura do código bash?

Por exemplo, ele converteria o seguinte:

DIR=/var/tmp
FILE=${DIR}/file
SCRIPT_ROOT=/opt/root
TOOL=${SCRIPT_ROOT}/tool.sh
${TOOL} ${FILE}

para:

DIR=/var/tmp
FILE=/var/tmp/file
SCRIPT_ROOT=/opt/root
TOOL=/opt/root/tool.sh
/opt/root/tool.sh /var/tmp/file
  • Estou convertendo o código BASH para Python e a leitura da sintaxe BASH é muito tediosa.
AK47
fonte

Respostas:

16

Execute o script em bash -x:

$ bash -x script
+ DIR=/var/tmp
+ FILE=/var/tmp/file
+ SCRIPT_ROOT=/opt/root
+ TOOL=/opt/root/tool.sh
+ /opt/root/tool.sh /var/tmp/file

Embora -xseja normalmente usado para depuração, parece atender às suas necessidades.

Documentação

De man bash:

-x Imprime comandos e seus argumentos à medida que são executados.

John1024
fonte