python_pdb断点调试常用命令】的更多相关文章

Python pdb调试 在需要断点调试的地方,加上:import pdb;pdb.set_trace() h:打印当前版本pdb可用的命令,如果需要查询某个命令,可以输入 h [command]l:列出当前将要运行的代码块n:让程序运行下一行,如果当前语句有一个函数调用,用’n’是不会进入被调用的函数体中的s:与n类似,但如果当前有一个函数调用,那么s会进入被调用的函数体中c:让程序正常运行,直到遇到断点j:让程序跳转到指定的行数a:打印当前函数的参数p:打印某个变量(例如:p _new)q:…
gdb thread apply all bt 如果你发现有那么几个栈停在 pthread_wait 或者类似调用上,大致就可以得出结论:就是它们几个儿女情长,耽误了整个进程. 注意gdb的版本要高于7.0,之前使用过gdb6.3调试多线程是不行的. 从上图可以看出两个线程都阻塞在wait上,而且还给出了在哪一行代码中,很容易就定位到产生死锁的位置. 有时候线程太多,想写到文件里,可以: (gdb)set logging file <文件名> (gdb)set logging on (gdb)…
gdb 调试常用命令 gcc -g mian.c -o main.out -o (定制生成的可执行文件的名称,缺省时为a.out) -g 使gdb可调试,在编译的时候,产生调试信息 gdb main.out (进入gdb调试环境),调试可执行文件main.out   list(l) 显示当前行之后的10行代码(list后面可接行号和函数名,回车继续向下显示) 回车 直接回车,重复上一次执行的命令 start(s) 开始执行程序,并停在main函数的第一条语句处 next(n) 执行下一条语句 s…
一.gdb常用的命令 list                       l    常看源代码 break                  b    设置断点     b  10(行号)    b  fun(设置函数名)   b  9(行号)  if  条件(i==10) info  b                 查看断点个数 delete                d   删除断点   1(第几个断点)      d(删除所有断点) run                   …
Android开发调试常用命令列表 adb命令 am am start -n com.iflytek.autofly.account/.ui.MainActivity am start -n com.android.settings/.Settings am start "intent:#Intent;action=android.media.action.MEDIA_PLAY_FROM_SEARCH;\ S.android.intent.extra.focus=vnd.android.curs…
LLDB是LLVM下的调试器.Xcode从4.0开始编译器开始改用LLVM,相应的调试器也从gdb改为LLDB. 1. p 用于输出基本类型 2. po 用于输出Objective-C对象 3. expr 可以在调试动态实行指定表达式,并将结果打印出来.常用在调试过程中修改变量的值 4. call  调用   call [self.view setBackgroundColor:[UIColor redColor]] 5. bt  打印调用堆栈,加all可打印所有thread的堆栈 6. ima…
Debug操作技巧 Show Execution Point 将光标回到当前断点停顿的地方 Step Over 执行当前行代码,并将运行进度跳转到下一行. Step Into 进入到当前代码行的方法内部. Step Out 从方法内部出去 Force Step Into 强制进入Java自带方法的内部 Run to Cursor 将光标定位到想到达的代码行 点击Run to Cursor Drop Frame 丢弃当前虚拟机栈帧 初始: 进入方法: 丢弃当前帧: 也就是说,我们退回了上一步进入方…
1 调用跟踪 跟踪系统调用 strace ls –l 跟踪库调用  ltrace 2 lsof(list open file) 查看程序命令打开了哪些文件  lsof –p PID; lsof –c CMD 查看某个用户打开的文件  lsof –u root 查看某个文件被哪个程序访问 lsof filename 3 proc文件系统 虚拟文件系统,可以使用cat,more,less查看 例如:cat /proc/cpuinfo;    cat /proc/meminfo 4 网络调试 ping…
top 参数 1 ,查看多核cpu  也可用 mpstat -P ALL pstate PID 查看进程堆栈 pmap -x PID 查看进程 内存段 ldd  XXX.so 查看 .so 的link 信息 linux 查看线程 方法一:PS 在ps命令中,“-T”选项可以开启线程查看.下面的命令列出了由进程号为<pid>的进程创建的所有线程. 1.$ ps -T -p <pid>   2 “SID”栏表示线程ID,而“CMD”栏则显示了线程名称. 方法二: Top top命令可以…
IDEA实用教程(七)-- IDEA的断点调试 23/100 发布文章 qq_41684621 六. IDEA的断点调试 打断点 在行号的右侧点击鼠标左键,出现红色圆形图标,说明已经被打上断点 Debug模式运行 运行代码时,选择Debug模式 断点调试常用快捷键 比较常用的有: F7:跳到下一步,代码一步一步向下执行,可以进入到被嵌套的方法内: F8:跳到下一个断点,方法内部嵌入的方法不会被执行: F9:回复程序运行,如果该断点下面代码还有断点则停止在下一个断点上,从第一个断点调到第二个断点去…
一.常用普通调试命令 1.简单介绍GDB 介绍: gdb是Linux环境下的代码调试⼯具.使⽤:需要在源代码⽣成的时候加上 -g 选项.开始使⽤: gdb binFile退出: ctrl + d 或 quit 2.调试过程 (1)list命令 list  linenum        显⽰binFile第linenum行周围的源代码,接着上次的位置往下列,每次列10⾏. list  function       显示函数名为function的函数的源程序 list                …
一.常用普通调试命令 1.简单介绍GDB 介绍: gdb是Linux环境下的代码调试⼯具.使⽤:需要在源代码⽣成的时候加上 -g 选项.开始使⽤: gdb binFile退出: ctrl + d 或 quit 2.调试过程 (1)list命令 list  linenum        显⽰binFile第linenum行周围的源代码,接着上次的位置往下列,每次列10⾏. list  function       显示函数名为function的函数的源程序 list                …
gdb常用命令: [root@redhat home]#gdb 调试文件:启动gdb (gdb) l :(字母l)从第一行开始列出源码 (gdb) break n :在第n行处设置断点 (gdb) break func:在函数func()的入口处设置断点 (gdb) info break: 查看断点信息 (gdb) r:运行程序 (gdb) n:单步执行 (gdb) c:继续运行 (gdb) p 变量 :打印变量的值 (gdb) bt:查看函数堆栈 (gdb) finish:退出函数 (gdb)…
一. Fiddler内置命令. 上一节(使用Fiddler进行抓包分析)中,介绍到,在web session(与我们通常所说的session不是同一个概念,这里的每条HTTP请求都成为一个session)界面中可以看到Fiddler抓取的所有HTTP请求.而为了更加方便的管理所有的session, Fiddler提供了一系列内置的函数用于筛选和操作这些session(习惯命令行操作linux的童鞋应该可以感受到这会有多么方便).输入命令的位置在web session管理面板的下方(通过快捷键al…
常用命令 where(w) 找出当前代码运行位置 list(l) 显示当前代码的部分上下文 list n(line number) 显示指定行的上下文 list m, n(line number) 显示指定开始行到结束行的代码 up(u) 返回上个调用点 down(d) 返回下个调用点 args(a) 显示当前所有变量 //此命令查看变量非常有用 print(p) 打印表达式或者变量结果 //此命令查看单个变量或者表达式的结果 !运行python命令,比如!test='hello'将会把test…
Python进阶(三十五)-Fiddler命令行和HTTP断点调试 一. Fiddler内置命令   上一节(使用Fiddler进行抓包分析)中,介绍到,在web session(与我们通常所说的session不是同一个概念,这里的每条HTTP请求都称为一个session).界面中能够看到Fiddler抓取的全部HTTP请求.而为了更加方便的管理全部的session, Fiddler提供了一系列内置的函数用于筛选和操作这些session(习惯命令行操作Linux的童鞋应该能够感受到这会有多么方便…
前言 Linux常用命令中有一些命令可以在开发或调试过程中起到很好的帮助作用,有些可以帮助了解或优化我们的程序,有些可以帮我们定位疑难问题.本文将简单介绍一下这些命令. 示例程序 我们用一个小程序,来帮助后面我们对这些命令的描述,程序清单cmdTest.c如下: #include<stdio.h>int test(int a,int b){    return a/b;}int main(int argc,char *argv[]){    int a = 10;    int b = 0; …
ba (Break on Access) ba命令设置处理器断点(通常称为数据断点,不太准确).此断点在访问指定内存时触发. 用户模式下 [~Thread] ba[ID] Access Size [Options] [Address [Passes]] ["CommandString"] 内核模式下 ba[ID] Access Size [Options] [Address [Passes]] ["CommandString"] 参数: Thread指定断点应用于的…
前言 Linux常用命令中有一些命令可以在开发或调试过程中起到很好的帮助作用,有些可以帮助了解或优化我们的程序,有些可以帮我们定位疑难问题.本文将简单介绍一下这些命令. 示例程序 我们用一个小程序,来帮助后面我们对这些命令的描述,程序清单cmdTest.c如下: #include<stdio.h>int test(int a,int b){ return a/b;}int main(int argc,char *argv[]){ int a = 10; int b = 0; printf(&q…
断点调试 (lldb) po 变量名warning: Swift error in module 项目名.Debug info from this module will be unavailable in the debugger. error: in auto-import:failed to get module '项目名' from AST context: ... 这种情况,请仔细检查你的桥接文件:项目名-Bridging-Header,是否导入了第三方库.若导入了第三方库,则该库是否…
Linux GDB 常用命令如下: 1.启动和退出gdb (1)启动:gdb ***:显示一段版权说明: (*** 表示可执行程序名) (2)退出:quit.有的时候输入quit后会出现相关提示:类似于“(y/n)”,输入y 2.显示和查找程序源代码 (1)list :显示10行代码,但是我为什么没有显示成功呢? (2)list 5,10:显示源文件第五行到第十行的代码 (3)list t4.c:5,10:显示源文件中第五行到第十行的代码,在跳是含有多个源文件的次序时使用: (4)list ge…
下面,就给大家介绍这些CentOS常用命令. 一:使用CentOS常用命令查看cpu more /proc/cpuinfo | grep "model name" grep "model name" /proc/cpuinfo [root@localhost /]# grep "CPU" /proc/cpuinfo model name : Intel(R) Pentium(R) Dual CPU E2180 @ .00GHz model nam…
技巧一:运行时修改变量的值 你以前怎么验证是不是某个变量的值导致整段程序不能正常工作?修改代码中的变量的值,然后cmd+r重新启动app?现在你不需要这么做了,只需要设置一个断点,当程序在这进入调试模式后,使用expr命令即可在运行时修改变量的值. 假如有一个loginWithUsername:方法,需要两个参数:username,password. 首先设置好断点,如下图所示: 运行app,进入断点模式后,在(lldb)后输入 ? 1 2 expr username = @"username&…
一:od断点注释保存的问题,由于od只有在正常退出的情况下才会保存分析代码时留下的注释,而很多时候为了在退出od时不让目标程序退出使用了剥离进程,这样就会导致这次操作所有的注释都没有保存,第二次重新载入时候又的重新分析注释下断点,所以需要自己下载一个插件 Myinfo.dll,这个插件可以手动保存注释和断点,插件里面的导出操作是把注释导出到一个文件中,导入操作是把注释导入到od代码分析界面来,注意,每次导出操作都会删掉文件中的内容,保留本次导出内容 二: 插件安装,od插件只需把插件的dll粘贴…
到目前为止我们的调试手段只有一种: 根据程序执行时的出错现象假设错误原因,然后在代码中适当的位置插入printf,执行程序并分析打印结果,如果结果和预期的一样,就基本上证明了自己假设的错误原因,就可以动手修正Bug了. 如果结果和预期的不一样,就根据结果做进一步的假设和分析. 这里,我们介绍一种很强大的调试工具gdb,可以完全操控程序的运行,使得程序就像你手里的玩具一样,叫它走就走,叫它停就停,并且随时可以查看程序中所有的内部状态,比如各变量的值.传给函数的参数.当前执行的代码行等. 有了gdb…
下一篇博客我会讲解用eclipse的m2插件来使用maven,这里先大概的了解下maven常用的命令.之后我在详细整理maven的生命周期,到时候会细致的讲解下这些指令应该要怎么使,maven都帮我们做了什么. maven常用的命令有如下: mvn compile 编译源代码 mvn deploy 发布项目 mvn test-compile 编译测试源代码 mvn test 运行应用程序中的单元测试 mvn site 生成项目相关信息的网站 mvn clean 清除项目目录中的生成结果 mvn…
设置断点:在如下图中的红色圆点处设置断点,红色圆点表示已经在这行设置断点.快捷键F9.   启动调试:按F5或者点击左边红框中的按钮.右边框是开始执行(不调试)Ctrl+F5. 调试工具栏:下面是工具栏中对应的名称和快捷键.           在调试过程中F5是执行到下一个断点.F11是逐语句,在执行到下图中的断点时,按F11会执行到Fibonacci方法里面逐步记录执行过程.F10是逐过程,与逐语句不同的是,在执行到下图中断点时,再执行会执行断点下面的语句,而不是去执行语句中的方法. 局部变…
Maven库: http://repo2.maven.org/maven2/ Maven依赖查询: http://mvnrepository.com/ 一,Maven常用命令: 1. 创建Maven的普通Java项目: mvn archetype:create -DgroupId=packageName -DartifactId=projectName 2. 创建Maven的Web项目: mvn archetype:create -DgroupId=packageName -DartifactI…
gdb常用命令 最近在研究nginx源码,gdb用于调试非常方便,之前这篇有研究过如何使用gdb调试nginx:https://www.cnblogs.com/yjf512/archive/2012/05/10/2494635.html 最近使用的时候gdb的命令又忘记了.这里复习一下. 这里有很全的资料:https://www.gitbook.com/book/wizardforcel/100-gdb-tips 常用命令 启动项目并断点 start 打临时断点 tb 打断点 b 列出代码 l…
PowerShell常用命令: 一 Get类 1.Get-Command : 得到所有PowerShell命令,获取有关 cmdlet 以及有关 Windows PowerShell 命令的其他元素的基本信息. 包括Cmdlet.Alias.Function. 2.Get-Process : 获取所有进程3.Get-Help  : 显示有关 Windows PowerShell 命令和概念的信息 4.Get-History  : 获取在当前会话中输入的命令的列表 5.Get-Job :  获取在…