13.07.2015 Views

Perl 语言编程 - Linux教程

Perl 语言编程 - Linux教程

Perl 语言编程 - Linux教程

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

% awk -F: '$7 && $7 !~ /^\/bin/' /etc/passwd% perl -F: -lane 'print if $F[6] && $F[6] !~ m(^/bin)' /etc/passwd-c 令 <strong>Perl</strong> 检 查 脚 本 的 语 法 然 后 不 执 行 刚 编 译 的 程 序 退 出 。 从 技 术 角 度 来 讲 , 它 比那 做 得 更 多 一 些 : 它 会 执 行 任 何 BEGIN 或 CHECK 块 以 及 任 何 use 指 令 , 因 为这 些 都 是 在 执 行 你 的 程 序 之 前 要 发 生 的 事 情 。 不 过 它 不 会 再 执 行 任 何 INIT 或 者END 块 了 。 你 仍 然 通 过 在 你 的 主 脚 本 的 末 尾 包 括 下 面 的 行 获 得 老 一 些 的 但 很 少用 到 的 性 质 :BEGIN { $^C = 0; exit; }-C 如 果 目 标 系 统 支 持 本 机 宽 字 符 , 则 允 许 <strong>Perl</strong> 在 目 标 系 统 上 使 用 本 机 宽 字 符 API 对 于 版本 5.6.0 而 言 , 它 只 能 用 于 Microsoft 平 台 )。 特 殊 变 量 ${^WIDE_SYSTEM_CALLS} 反 映 这个 开 关 的 状 态 。-d 在 <strong>Perl</strong> 调 试 器 里 运 行 脚 本 。 参 阅 第 二 十 章 ,<strong>Perl</strong> 调 试 器 。-dMODULE在 调 试 和 跟 踪 模 块 的 控 制 下 运 行 该 脚 本 , 该 模 块 以 Devel::MODULE 形 式 安 装 在<strong>Perl</strong> 库 里 。 比 如 , -d:Dprof 使 用 Devel::Dprof 调 节 器 执 行 该 脚 本 。 参 阅 第 二 十 章 的 调试 节 。-DLETTERS-DNUMBER设 置 调 试 标 志 。( 这 个 开 关 只 有 在 你 的 <strong>Perl</strong> 版 本 里 编 译 了 调 试 特 性 ( 下 面 描 述 )之 后 才 能 用 。) 你 可 以 声 明 一 个 NUMBER, 它 是 你 想 要 的 位 的 总 和 , 或 者 一 个LETTER 的 列 表 。 比 如 , 想 看 看 <strong>Perl</strong> 是 如 何 执 行 你 的 脚 本 的 , 用 -D14 或 者-Dslt。 另 外 一 个 有 用 的 值 是 -D1024 或 -Dx, 它 会 列 出 你 编 译 好 的 语 法 树 。 而-D512 或 -Dr 显 示 编 译 好 的 正 则 表 达 式 。 数 字 值 在 内 部 可 以 作 为 特 殊 的 变 量 $^D获 得 。 表 19-1 列 出 了 赋 了 值 的 位 。表 19-1 -D 选 项500

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!