BBS水木清华站∶精华区

发信人: TJB (老六), 信区: Linux 
标  题: GDB (4) 
发信站: BBS 水木调试站 (Tue Jun  2 16:03:10 1998) 
 
发 信 人:System_Killer(大家一起来发呆)           信区名称:Linux[4695] 
信件提要:gdb(四) 
原发信站:中国科大BBS站(Wed, 01 Apr 1998 00:30:00) 
 
退出gdb 
============ 
 
`quit' 
     使用'quit'命令来退出gdb,或打一个文件结束符(通常是' CTROL-D')。如果 
     你没有使用表达式,gdb会正常退出,否则它会把表达式的至作为error code 
     返回。 
 
     一个中断(通常是'CTROL-c)不会导致从gdb中退出,而是结束任何一个gdb的命 
     令,返回gdb的命令输入模式。一般在任何时候使用'CTROL-C'是安全的,因为 
     gdb会截获它,只有当安全时,中断才会起作用。 
     如果你正在用gdb控制一个被连接的进程或设备,你可以用'detach'命令来释放 
     它。 
 
Shell命令 
============== 
    当你偶尔要运行一些shell命令时,你不必退出调试过程,也不需要挂起它;你 
    可以使用'shell'命令。 
 
`shell COMMAND STRING' 
     调用标准shell来执行'COMMAND STRING'.环境变量'SHELL'决定了那个shell被 
     运行。否则gdb使用'/bin/sh'. 
     'make'工具经常在开发环境中使用,所以你可以不用'shell'命令而直接打'make' 
 
`make MAKE-ARGS' 
     用指定的命令行变量来运行'make'程序,这等于使用'shell make MAKE-ARGS' 
GDB 命令 
************ 
   我们可以把一个gdb命令缩写成开头几个字母,如果这没有二意性你可以直接回车来 
   运行。你还可以使用TAB键让gdb给你完成接下来的键入,或向你显示可选择的命令, 
   如果有不止一个选择的话。 
 
Command语法 
============== 
 
   一个gdb命令是一个单行的输入。长度没有限制。它一个命令开头,后面可以跟参量。 
   比如命令'step'接受一个参量表示单步执行多少步。你也可以不用参量。有的命令 
   不接受任何参量。 
 
   gdb命令只要没有二意性的话就可以被缩写。另外一些缩写作为一个命令列出。在某些 
   情况下二意也是允许的。比如's'是指定'step'的缩写,但还有命令'start'。你可以把 
   这些缩写作为'help'命令的参量来测试它们。 
   空行(直接回车)表示重复上一个命令。但有些命令不能重复比如象'run',就不会以这 
   种方式重复,另外一些当不小心重复会产生严重后果的命令也不能用这种方法重复。 
   'list'和'x'命令当你简单的打回车时,会建立新的变量,而不是简单的重复上一个命 
   令。这样你可以方便的浏览原代码和内存。 
   gdb还有一种解释RET的方法:分割长输出。这种方法就和'more'命令相似。由于这时经 
   常会不小心多打回车,gdb将禁止重复当一个命令产生很长的输出时。 
   任何用'#'开头一直到行尾的命令行被看作是注释。主要在命令文件中使用。 
 
-- 
※ 来源: 中国科大BBS站 [bbs.ustc.edu.cn] 
 
 
 
-- 
※ 来源:·BBS 水木调试站 Leeward.lib.tsinghua.edu.cn·[FROM: 202.200.37.100] 

BBS水木清华站∶精华区