Summary of Comments on ebook65-12 Page: 1 Date: 2001-8-5 21:25:15 P e r l 的 - d 开关可使 P e r l 以调试方式启动运行 命令行上也指明了被调试的程序 Page: 2 Date: 2001-8-5 21:26:01 每当调试程序向你显示程序中的一个语句时, 它就是准备要执行的语句, 而不是上一个运行的语句 Date: 2001-8-5 21:27:36 输入调试程序的第一个和最重要的命令是 h e l p( 帮助 ) 命令 如果在调试程序的提示符处 键入 h, 那么调试程序的所有可用命令均被输出 也可以使用该命令的某种变形, 如 h h, 它 能输出命令和语句的汇总, h cmd 用于输出某个命令的帮助信息 Date: 2001-8-5 21:30:34 帮助命令的列表也许比较长, 一个屏幕显示不下, 开头的几个命令显示后, 就需要向下滚动 若要每次显示一屏调试命令, 可以在命令的前面加上一个 字符 因此, 如果想每次查看一屏帮助命令, 请使用命令 h Date: 2001-8-5 21:31:00 调试程序的最常用特性是每次运行一个 P e r l 代码的指令 因此, 如果继续使用上面的例子, 若要转至你的 P e r l 程序的下一个语句, 可以使用调试程序的命令 n: Date: 2001-8-5 21:32:06 P e r l 的任何语句都可以在调试程序提示符后面运行 Sequence number: 6 Date: 2001-8-5 21:32:10 载 Page: 3
Date: 2001-8-5 21:32:44 若要重复运行上面的命令, 也可以在调试程序的提示符处按 E n t e r 键 Date: 2001-8-5 21:35:25 若要设置断点, 必须在程序中选定一个要停止运行的位置 命令 l 用于列出程序的下面 1 0 行 再次键 l, 可以列出下面的 1 0 行, 如此类推 若要列出从某一行开始的程序, 请键入 l l i n e n o, 其中 l i n e n o 是程序的行号 也可以设定要列出的行的范围, 方法是键入 Date: 2001-8-5 21:35:52 你可以在 P e r l 程序中的任何位置上设置断点, 只要这个断点是个有效的 P e r l 语句 但是断点不能设置在花括号 ( 第 3 0 行 ) 标点符号 ( 第 2 9 行 ) 空行 ( 第 3 1 行 ) 只包含注释的代码行上 Date: 2001-8-5 21:35:59 若要设置断点, 请使用 b breakpoint 命令, 其中 b r e a k p o Date: 2001-8-5 21:36:00 i n t 可以是行号或子例程名 Page: 4 Date: 2001-8-5 21:36:17 必须知道的另一个关于断点的命令是继续命令 c 命令 c 向调试程序发出指令, 使 P e r l 程序 运行到下一个断点或程序的结尾 : Date: 2001-8-5 21:38:49 若要查看你在程序中已经设置的断点, 可以像下面这样使用命令 L: Date: 2001-8-5 21:42:04 若要撤消程序中的断点, 可以采用设置断点时的相同方法使用命令 d, 比如 d line 或 d s u b n a m e: Page: 5
Date: 2001-8-5 21:45:53 若要单步进入 p r i n t - e m p ( ), 不要使用命令 n, 而应该使用命令 s, 即单步执行命令 s 用很相似, 不过 s 命令并不仅仅执行函数, 然后转入下一个指令, 而是执行函数, 然后在函数中的第 1 个指令处停止运行, Date: 2001-8-5 21:47:03 还可以在 P e r l 程序运行时修改程序里的变量 Date: 2001-8-5 21:47:12 最后, 若要退出调试程序, 只需在调试程序提示符处键入 q Page: 6 Date: 2001-8-5 21:48:46 单命令行程序 (One-Liners) 这种程序的关键是在命令行上赋予 P e r l 的 - e 开关 - e 的后面可以是任何 P e r l 语句, Date: 2001-8-5 21:48:50 你可以使用多个 - e 开关来插入多个语句, 或者用分号将这些语句隔开, Page: 7 Date: 2001-8-5 21:52:16 - e 开关的一个经常的非常有用的用法是与 - d 组合起来使用, 并将它直接放入 P e r l 的调试程序中, 但是没有需要调试的程序 : Date: 2001-8-5 21:57:31 P e r l 解释程序中的 - c 开关可供 P e r l 用来查看你的代码, 以便找出语句上的问题, 但是它实际上并不运行程序 : Date: 2001-8-5 21:58:01 与 - w 组合起来后,- c 开关就能对你的程序进行编译, 然后显示 P e r l 认为适当的警告消息 Date: 2001-8-5 21:58:47
该解释程序本身有一个可以查看的版本, 你可以在命令行上使用开关 - v, 便可了解该版本号, Page: 8 Date: 2001-8-5 21:59:58 迄今为止介绍的尖括号运算符 ( < >) 具有两个功能 : 1) 如果尖括号中间是文件句柄, 尖括号运算符允许你读取文件句柄, 比如 < S T D I N > 2) 如果尖括号中间是搜索模式, 尖括号运算符能返回与该模式匹配的文件列表, 这称为 一个 g l o b, 比如 < *. b a t > Date: 2001-8-5 22:00:07 尖括号运算符还有另一个功能 一组尖括号运算符如果中间没有任何东西, 那么它可以读取命令行上所有文件的内容 ; 如果没有给出文件名, 则可以读取标准输出 有时空尖括号运算符称为菱形运算符 ( 因其形状而得名 ) Date: 2001-8-5 22:01:21 P e r l 程序的参数, 即去掉 P e r l 的参数 - w - c - d 和 - e 之后, 将被存放在称为 @ A R G V 的数组中 Date: 2001-8-5 22:03:38 P e r l 程序的 - n 开关可用于将任何 - e 语句封装在该小程序中 : Date: 2001-8-5 22:03:49 载 Page: 9 Date: 2001-8-5 22:06:56 - p 与 - n 开关的作用相同, 差别在于语句执行后各个文件行便自动输出 Date: 2001-8-5 23:01:57 当你用 P e r l 的单命令行程序来编辑一个文件时, 必须注意不要在打开文件进行读取操作的同时, 又试图对它进行写入操作,
Page: 10 Date: 2001-8-5 23:07:42 t 命令能够在程序执行时输出程序的所有语句 T 命令用于输出堆栈跟踪记录, 这是当前正在执行的函数 调用该函数的函数等的列表 下载 Date: 2001-8-5 23:08:17 你可通过在线手册查看这些开关的完整列表 若要访问这些信息, 请在命令提示符处键入 perldoc perlrun