bash trap调试失败

时间:2011-05-10 11:57:49

标签: bash

这个程序(调试shell)只有在你运行它时才有效:

  

debug_shell script.sh

如果您有这样的脚本:

#!/bin/debug_shell
echo my program

然后它不起作用。

“debug_shell”的来源:

#!/bin/bash
shopt -s extdebug
function on_debug {
  echo HERE:  $BASH_ARGV
}
trap on_debug DEBUG
. $1

知道为什么它不起作用(bash 3.2.25)?

2 个答案:

答案 0 :(得分:0)

确保debug_shellscript.sh具有可执行位。同样重要的是如何运行脚本:

$ ./script.sh
HERE: ./script.sh
my program

答案 1 :(得分:0)

在我的ubuntu 10.04 bash 4.1.5上,你的东西运行正常。

你确定你的script.sh是可执行的吗? 并确保您将debug_script存储在/ bin当然;)