debugger no bash

3

eu uso

sh -xv my_script.sh

para depurar o script / bin / sh. Como faço para depurar scripts / bin / bash?

Estou recebendo o seguinte erro e preciso saber a linha que precisa ser editada.

# ./batch_master.sh

'@'10.10.10.10.' (using password: NO)user 'companycuser
    
por shantanuo 02.09.2011 / 11:41

3 respostas

2

Isso não funciona?

bash -x ./batchmaster_sh
    
por 02.09.2011 / 11:55
1

Edite o script, adicione uma opção -x à linha de comando da shell como:

#!/bin/sh -x

ou

#!/bin/bash -x

Ele irá imprimir todos os comandos executados e você poderá ver o que é feito após o que.

    
por 02.09.2011 / 11:55
1

Houve um debugger para o bash desde a virada do século. Veja o link

Se você usar o set -x tracing, recomendo configurar o PS4 para:

 PS4='(${BASH_SOURCE}:${LINENO}): ${FUNCNAME[0]} -  [${SHLVL},${BASH_SUBSHELL}, $?]
'
    
por 20.10.2015 / 17:26