首页 > 解决方案 > 以事后模式启动 pdb。避免输入“c”的任何技巧

问题描述

我想创建一个小助手(例如一个shell函数),它允许我在pdb post mortem 模式下调用任何python 脚本。

withpdb() {
    cmd="$1" ; shift
    python -m pdb -- "$(which $cmd)" "$@"
}

所以如果我输入例如

mycmd.py param1 param2

我遇到了我想用 pydb 分析的错误。我只是在我的 bash 历史记录中添加前缀withpdb

withpbd mycmd.py param1 param2

现在 pdb 用我的脚本启动,只要我按下c并返回脚本就会启动。

我的问题是:有什么技巧可以避免输入初始的“c”+ enter 吗?

如果我必须在 python 或其他语言中编写一些包装器代码,那也没关系

标签: pythonpdb

解决方案


使用启动-c时执行的选项c。(并且由于您只需编写一次函数,continue为了清楚起见,请使用而不是缩写。)

withpdb() {
  cmd="$1" ; shift
  python -m pdb -c continue -- "$(which $cmd)" "$@"
}

推荐阅读