perl教程001

perl教程001 - 下载...

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: 下载 第一部分 Perl 基础 第 1学时 第 2学时 第 3学时 第 4学时 第 5学时 第 6学时 第 7学时 第 8学时 Perl 入门 Perl 的基本构件:数字和字符串 控制程序流 基本构件的堆栈:列表与数组 进行文件操作 模式匹配 哈希结构 函数 下载 第 1学时 Perl 入门 Perl是一种通用编程语言。凡是其他编程语言能够使用的地方,都有它的用武之地。在各 行各业中,它已经被用于你能够想像到的各种各样的任务的处理。它已经用于股票市场、产 品制造、产品设计、客户支持、质量控制、千年虫测试、系统编程、工资处理和库存管理等 各个领域,当然还有 Web。 P e r l 的用途之所以如此广泛,原因是 P e r l被称为是一种“胶水语言” 。所谓胶水语言,也 就是说它是可以用来将许多元素连接在一起的语言。你可能不想用 Perl 来编写一个文字处理程 序(尽管可以编写这样的程序) ,因为现在已经有许多非常出色的文字处理程序了。用 P e r l来 编写数据库、电子表格、操作系统或者特性完善的 We b服务程序也不是聪明之举,不过编写 这些程序是完全可以做到的。 P e r l真正擅长的是将这些程序连接在一起。 P e r l能够利用你的数据库,将它转换成一个具 有电子表格特性的文件,并且在你进行文件的处理时,根据需要对数据进行调整。 Perl 也能够 利用文字处理文档,将它们转换成 HTML文档,以便在 Web上显示。 由于 P e r l 是一种“胶水语言” ,能够将许多元素连接在一起,因此它具有极强的适应性。 它至少能够在二十几种操作系统下运行,甚至能够在更多的操作系统下运行。 Perl的编程样式 非常灵活,因此可以用许多不同的方法来做同一件事情。你编写的 Perl程序看上去可能与我的 程序毫无共同之处,但是如果它们运行起来,却没有任何问题。必要的时候, Perl 可以是一种 非常严谨的语言,而对于编程新手来说,如果你愿意,它又可以是一种非常随意的语言,这 完全可以根据你的需要来定。 下面让我们来澄清一些基本概念。这个编程语言的名字是 Perl。运行你的程序的程序(即 解释程序)的名字是 perl。对你来说它们之间的差别通常并不十分重要,不过当你试图启动你 的程序时,情况就不一样了,那时它的名字总是 p e r l 。有时,你会看到 P e r l 被写成了 P E R L , 这可能是因为 Perl的名字是 Practical Extraction and Report Language 缩略而来的。现在已经没 有人再说 PERL,因为这个名字显得太一本正经了。 Perl这个名字则比较随便。 P e r l的许多特性是从其他语言中借来的。这种借用曾经在早期导致 P e r l 成 为另一个用语 Pathologically Eclectic Rubbish Lister的缩写。 本学时介绍的内容包括: • 安装 Perl。 • 访问 Perl的内部文档。 • 编写你的第一个 Perl脚本程序。 1.1 安装Perl 若要使用 P e r l ,首先必须安装 P e r l 。 P e r l 的安装是非常容易的,并且不会出错。实际上, 作为安装步骤的一部分, Perl应该进行自我测试,以确保它安装成功。安装的操作过程可以有 4 使用第一部分 Perl 基础 下载 很 大的差别,这要根据你运行的操作系统而定。因此,为了使安装操作能够进行下去,首先 要确定你运行的是什么操作系统,然后再进行下一步工作。 1.1.1 等一等,也许你已经安装了Perl 当你着手在你的系统上安装 P e r l 之前,应该检查一下是否已经安装了 P e r l 。有些 U N I X的 供应商已经为操作系统配备了 P e r l 。 Windows NT 也将 P e r l 作为 Windows NT 的资源工具包 (Resource Kit) 的组成部分提供给客户。若要查看你的操作系统上是否已经安装了 P e r l,你需 要获得一个命令提示。 在U N I X系统下,只要登录到该系统中。如果你拥有一个图形操作环境,需要打开终端 窗口。当已经登录或者打开终端窗口后,你会看到下面这个提示符: $ 这个提示符也可能是 % ,也可能是 b a s h %,无论什么提示符,它都称为 s h e l l 提示符或命令 提示符。在本书的头几个学时中,你将需要使用这个提示符与 Perl进行交互操作。 若要了解你的操作系统上是否已经安装了 Perl,请键入下面这行命令(不要键入 $提示符) : $ p erl -v 这时系统可能显示一个出错消息,如 command not found (命令没有找到) ,也可能 Perl作 出响应,输出它的版本号。如果 Perl输出它的版本号,那么就表示它已经安装好了,你就不需 要重新进行安装。 报告的版本号至少应该是 5 ,也许是 5 . 0 0 4 、 5 . 0 0 5 、 5 . 6 等,不能小于这 些数字。如果 P e r l 的版本号是 4 . x ,那么你必须安装一个新拷贝。 Perl 4 这个 版本太老,错误很多,而且不再能够得到维护,本书中只有很少的示例程 序能在 Perl 4 下运行。在撰写本书时, 5 . 0 0 5 是 P e r l 的当前版本, 5 . 6 在 1 9 9 9 年底推出。 如果你拥有一台运行 Wi n d o w s 操作系统的计算机,要想查看是否安装了 P e r l,必须显示图 1-1 所示的 MS-DOS提示符。 图 1-1 可 以在这个 D O S 提 示符下查看 P e r l 的版 本 5 第1学时 Perl 入门使用 下载 在这个提示符下,键入下面这个命令(不要重复键入提示符) : C:\> p erl -v 如果Perl已经安装,它就会显示版本号。正如上面的警告中所说的那样,它的版本号至少必须 是5。如果DOS回答说Bad command or file name(命令或文件名不正确) ,那么你就应该安装Perl。 在M a c i n t o s h 计算机上,你可以像图 1 - 2 所示的那样,运行 File Find 命令( C o m m a m d - f ) , 在Find 的命令框中键入‘ MacPerl’ ,来查看是否已经安装了 Perl。如果找到了该应用程序,那 么将它打开,观察 A p p l e菜单下面的“ About MacPerl ”选项。你至少应该拥有 Version 5.2.0 Patchlevel 5.004 这个版本号,否则就应该安装 MacPerl的新版本。 图 1-2 查看 M a c i n t o s h 计算 机上的 Perl 1.1.2 在Windows 95/98/NT上安装Perl 若要在 Wi n d o w s 下安装 P e r l,请记住,你可以像许多其他情况中那样,既可以使用捷径, 也可以使用比较笨的办法。如果你对开发环境中需要的 C 编译器和各种工具(比如 M a k e f i l e 、 s h e l l等)非常熟悉,那么可以从头开始安装你自己的 P e r l 。可以随意查看、修改和改变 P e r l解 释程序的源代码,使之适合你的需要。详细情况请参见第 16学时(Perl程序的开发界)的内容。 想要在 Windows下从头安装 Perl并不容易,对于大多数人来说,这样做并不值得。 安装 P e r l 时使用的捷径确实是非常容易的。 ActiveState To o l 公司提供了一个自行安装 P e r l 的工具,安装工作就像安装其他任何 Wi n d o w s 应用程序一样,如图 1 - 3 所示。这个 P e r l 是在 ActiveState Community License (ActiveState 团体许可证)下提供的,你应该阅读该许可证的 有关说明。该公司的 URL是http://www.ActiveState.com。 这个 P e r l与你自己建立的 P e r l 是完全相同的东西。 A c t i v e S t a t e 公司只是为你做了最困难的 那部分工作,并且用有关安装程序将它包装了起来。如果你需要的话, A c t i v e S t a t e公司还为 Perl 提供了商业上的支持,并且提供了一些附加产品,如调试程序和其他开发工具及文件库。 图 1-3 用 A c t i v e S t a t e 提供 的工具在 W i n d o w s 下安装 Perl 本书的光盘上包含了 ActiveState 公司的 Perl产品的拷贝,你可以直接使用 这个光盘来安装 P e r l ,也可以通过 A c t i v e S t a t e公司的 We b站点来获取最新本 的Perl。 6 使用第一部分 Perl 基础 下载 1.1.3 在UNIX上安装Perl 若要在 U N I X 上安装 P e r l ,需要具备两个条件。首先,需要一个 P e r l 的源模块包的拷贝。 你始终都可以从 h t t p : / / w w w. p e r l . c o m的 D o w n l o a d s 区域下载它的最新版本。可以从那里找到多 个版本,不过你需要的版本总是带有“ Stable”或“ Production”标号。还需要一个 ANSI C 编 译器。如果不知道这个编译器的作用,也不必担心。 Perl的配置程序能够选定一个,如果没有 这个编译器,你可以安装一个预安装版本,这在本书的结尾处将要介绍。 如果你的 UNIX配有一个用于安装预安装软件包的系统,你就能够安装一 个预安装的 P e r l版本。 L i n u x、 S o l a r i s、A I X和其他 U N I X系统均配有已经捆绑 的预安装 P e r l 版本,它们的安装非常容易。请查看有关资料,以了解何处能 够得到这些软件包。 当你拥有 P e r l 的源模块包后(它的文件名类似 S t a b l e . t a r. g z ) ,必须对它进行拆包,然后进 行安装。若要进行操作,请输入下面的命令: $ gunzip stable.tar.gz $ tar xf stable.ta r 这两个命令的运行需要花费一定的时间。如果没有 g u n z i p 解压缩程序,可以从 h t t p : / / w w w. g n u . o rg 下载一个拷贝。该程序包称为 g z i p 。当你完成所有的拆包操作后,就会看 到一个提示符,然后键入下面的命令: $ sh Configure 这时 C o n f i g u r e程序就开始运行,并且问你一系列的问题。如果大部分问题你不知道如何 回答,这没有关系,你只需要按 E n t e r 键即可。默认的答案通常是最好的答案。 P e r l几乎能够 在任何 UNIX系统上安装而不会出现任何问题。当所有这些操作完成时,键入下面的命令: $ make Perl的安装需要花费相当长的时间,你可以乘此机会喝点儿咖啡。如果你的系统运行速度 比较慢,你可以利用这个时间用午餐。当安装完成时,再键入下面这两个命令: $ m ake test # make install make test 这个命令用于确保 P e r l 的安装百分之百正确并且使之可以准备运行。若要运行 make install 命令,你必须以一个根用户的身份进行登录(正因为这个原因,所以使用提示符 #, 这是根用户的提示符) ,因为它需要将 Perl 安装到系统目录中去。 当make install运行正确时,你可以测试 Perl 的安装情况,方法是再次键入下面的命令: $ perl -v 如果这个命令运行正确,那么祝贺你安装成功了! 在 U N I X下安装 P e r l 时使用的源模块拷贝位于本书所附的光盘上。可以直 接从这里拷贝这个安装模块包,也可以从 http://www.perl .com 那里获得 Perl的 最新版本。 7 第1学时 Perl 入门使用 下载 1.1.4 在Macintosh系统上安装Perl Macintosh Perl 的最新版本称为 M a c P e r l,可以从 CPAN端口目录下获得该版本。你必须访 问 h t t p : / / w w w. p e r l . c o m / C PA N / p o r t s / m a c 站点,从那里下载安装文件。你应该从该目录下下载 MacPerl appl.bin 的最新版本,安装时,请使用 StuffIt Expander ,从下载文件中取出 MacPerl安 装程序,然后运行该安装程序。 当完成安装后,你可能想要为 Perl文档的阅读者安装一个帮助程序 Shuck ,它是与 MacPerl 一道安装的。 MacOS 8 的用户可以通过 I n t e r n e t 控制面板进行安装,方法是打开 A d v a n c e d >File Mapping ,给 Shuck应用程序添加文件扩展名映像 .pod。这样就可以更加容易地访问该文 档了。还可以给 M a c P e r l 应用程序建立 . p h 、. p l、. p l x 、. p m、. c g i 和. x s (这些都是 P e r l使用的扩 展名)等文件映像,请务必将文件类型设置为‘ TEXT’ 。 MacOS 7 的用 户 必 须 使用 I n t e r n e t C o n f i g 实用 程 序 来 进行 类 似 的映 射 操 作 。在 I n t e r n e t C o n f i g 中,选定 H e l p e r s,为 p o d添加新的帮助应用程序 s h u c k。另外,还要将前面提到 的其他扩展名的帮助文件添加给 MacPerl 应用程序。 本书所附的光盘上包含了一个 MacPerl的安装软件包的拷贝。你可以直接 用光盘进行安装,也可以访问 h t t p : / / w w w. p e r l . c o m / C PA N / p o r t s / m a c站点,从 那里获得一个最新的拷贝。 1.2 文档资料 这个问题非常重要,因此你应该格外注意。每安装一个 P e r l,你就会得到一份完整的 P e r l 语言和解释程序的当前文档资料的拷贝。 是的,安装软件包配有用于 P e r l 的整套文档资料,你可以免费获得这套资料。 Perl 5.005 版包含的资料超过 1 7 0 0 页。这些资料包括参考资料、培训资料、 FA Q 、历史资料,甚至是关 于Perl 内部情况的说明。 可以使用各种不同的方法来访问这些文档资料。在 Wi n d o w s 和U N I X 系统上,与 Pe r l 一道 安装了一个称为 p e r l d o c的实用程序。你可以使用 p e r l d o c程序来搜索这些文档资料,为手册提 供格式化输出。若要运行 p e r l d o c 程序,你必须处在一个命令提示符下。下面这个例子使用的 是UNIX提示符,不过在 DOS命令提示符下也可以: 8 使用第一部分 Perl 基础 下载 手册的各个部分可以分成不同的节,其名字可以是 p e r l f u n c( P e r l 函数) p e r l o p( P e r l运 、 算符)和 p e r l f a q (Perl FA Q )等。若要访问 p e r l f u n c手册页,可以输入命令 perldoc perlfunc 。 手册的所有部分的名字都在 perldoc perl 手册页中列出。 若要搜索手册,查找某个函数名,可以运行带有 - t f 开关的 p e r l d o c 实用程序。下面这个例 子用于查找 Perl的print函数的手册页: $ perldoc -tf print FA Q是指关于 P e r l 的常见问题。这些问题是学习 P e r l 的人一再提出的问题。为了节省人们 的时间,减少一些麻烦,这些问题集中起来放入称为 FA Q 的文件中。若要搜索 FA Q 文件,找 出某个关键字,你应该使用 - q 开关,后随 FA Q 标题中可能出现的一个单词。例如,如果想要 知道有关 Perl的支持信息,可以使用下面这个命令: $ perldoc -q support 这时,就会显示 FAQ问题的条目“ Who Supports Perl ? Who develops it? Why is it free ? ” (谁支持 Perl?谁开发了 Perl?它为什么是免费的?) 1.2.1 某些特殊的文档资料举例 当在 U N I X 系统上安装 P e r l 时,安装人员会看到一个选项提示,让他按传统的“ m a n ”格 式来安装手册页。如果安装人员选择 y e s (是) ,那么标准 P e r l 文档就转换成 m a n格式,并且存 放在一个相应的位置。若要访问 P e r l文档,既可以使用 p e r l d o c 程序,也可以像通常在 U N I X中 那样使用 man程序: $ m an per l 当在 Microsoft Windows系统上安装 ActiveState公司的 Perl 产品时,手册页被转换成 HTML 文档格式,并且可以用 Web浏览器进行访问。如果想要阅读手册,请将你的 Web浏览器指向本 地目录 C : \ P e r l \ h t m l ,假如你使用标准安装目录的话;如果你不使用标准目录,则使用你选定 的目录。 如果是 M a c i n t o s h 系统, M a c P e r l配有一个称为 S h u c k 的实用程序,它位于 M a c P e r l 文件夹 中。你可以用它来阅读和搜索 Perl 文档,如图 1-4所示。 图 1-4 M a c P e r l 的 S h u c k 文 档阅读器 下载 9 第1学时 Perl 入门使用 1.2.2 如果无法找到文档该怎么办 如果无法找到你要的文档,那么可能在两个地方出现了错误。首先是没有查找正确的文 档位置。也许 p e r l d o c实用程序安装到的目录不在你的 s h e l l 搜索路径上,或者你的搜索路径具 有很强的限制性。请反复搜寻 p e r l d o c 实用程序,将该目添加到你的 s h e l l 的 PAT H环境变量 中。 第二个原因是文档被删除了。也许是不小心删除的,也可能是恶意删除的。 Perl 的安装包 括了文档的安装。你不能只安装 P e r l而不安装文档。如果文档没有了,那么完全可以认为 P e r l 的安装不正确,或者安装以后遭到了破坏。也许你或者系统管理员应该考虑重新安装 Perl。文 档是 Perl开发环境的不可分割的组成部分,如果没有文档,那么 Perl的某些部分将无法运行。 如果其他方法都失败了,而你仍然无法得到文档的本地拷贝,那么你可以求助于 We b 。 在 P e r l的主要销售站点( h t t p : / / w w w. p e r l . c o m)上,可以访问一组标准文档。拥有你的 P e r l 版 本配备的实际文档更好,因为它是根据你的特定 Perl版本和安装情况裁剪的文档,不过这个在 线文档只有在紧急情况下才能使用。 1.3 编写你的第一个Perl程序 若要编写你的 Perl程序,需要一个称为文本编辑器的实用程序。使用文本编辑器,可以将 不带任何格式的纯文本输入文件中。 Microsoft Windows 的Notepad和DOS 的EDIT.EXE均属文 本编辑器。在 UNIX中, vi、emacs 和pico等,都是文本编辑器。你的系统上至少存在其中的一 个文本编辑器。在 M a c系统下, M a c P e r l 应用程序包含一个基本的文本编辑器,若要打开一个 新程序,请在 File菜单下选定 New。 不应该使用文字处理程序来键入你的 P e r l 程序。文字处理程序,比如 M i c r o s o f t 的 Wo r d 、 Wo r d p a d和 Wo r d P e r f e c t 等,在保存文档时,会将格式化代码嵌入文档之中,即使文档并不包 含任何格式。这些格式化代码会使 Perl感到莫名其妙,你的程序将无法正确运行。如果需要使 用文字处理程序,那么务必将你的程序保存为纯文本文件。 1.3.1 键入程序 打开文本编辑器,正确无误地键入下面这个 Perl程序: #!这个程序行应该是文件中的第一行。 当将该程序键入你的文本编辑器后,将它保存在名字为 h e l l o 的文件中。不需要在这个文 件名上使用扩展名,但是你加不加扩展名, P e r l 都无所谓。有些 Wi n d o w s 和M a c i n t o s h 实用程 序使用扩展名来指明该文件是什么类型的文件。如果需要或者想要使用扩展名,那么常用的 扩展名是 .pl或.plx,因此你可以使用 hello.pl 这样的文件名。 1.3.2 运行程序 这时,若要运行该程序,必须进入到一个命令提示符下。在 U N I X 中,请打开一个终端窗 口,或者登录到系统中。在 Microsoft Wi n d o w s 计算机上,显示一个 M S - D O S提示符。还应该 10 使用第一部分 Perl 基础 下载 使用你的 shell的cd命令,转到你存放 hello程序的目录中。 当显示该提示符时,键入下面这个命令。 (下面显示的是 D O S 提示符, U N I X提示符稍有 不同。 ) C:\PROGRAMS> erl hello p 如果一切进行正常, Perl应该显示下面这行消息: Hello, world! 如果你键入的这个命令运行正确,那么祝贺你的程序运行成功了!请记住如何运行这个 程序,因为这也是你启动本书其余章节中的程序的方法。 (也可以使用其他一些方法,下面很 快就要介绍这些方法。 ) 如果该命令不能运行,请进行下列检查: • 如果看到出错消息 Bad command or file name 或者 perl : command not found ,那么表示 p e r l 程序不在你的执行路径上。必须确定 p e r l 程序究竟安装在什么地方,并将该目录添 加给你的 shell中的 PATH 变量。 • 如果看到出错消息 Can’t open perl script hello : A file or directory does not exist (无法打 开 P e r l 脚本 h e l l o:文件或目录不存在) ,那么你可能没有进入早些时候保存 h e l l o 文件所 在的这个目录,也许你将该文件保存到另一个目录了。 • 如果看到 syntax error 这样的错误,那么 P e r l能够正常启动运行,但是无法确定 h e l l o文件 中究竟有什么。也许键入的文件内容有错误,也可能使用了一个文字处理程序,它将格 式应用到保存的文件中了。可以使用 U N I X 的 c a t 命令,或者 D O S的t y p e 命令,来核定文 件中的内容。如果键入的内容有误,你应该对所有内容进行检查,引号和所有标点符号 都很重要。 如果使用 M a c P e r l ,只需要从 S c r i p t菜单中选定 Run“hello ” ,运行你的第一个 p e r l 程序。如 果没有使用 M a c P e r l 的内置编辑器来编写你的程序,那么请从 F i l e 菜单中选定 O p e n命令,打开 MacPerl中你的程序,然后选定 Run 。 1.3.3 程序正确将会发生什么情况 当键入命令 perl hello 时,你的计算机上一个名叫 p e r l 的程序就启动运行。该程序称为 p e r l 解释程序。这个 perl 解释程序是 P e r l的核心和灵魂。它的作用是取出对它赋予的文件(这里是 文件 hello) ,找出里面的程序,并运行该程序。 所谓“运行该程序” ,是指首先要检查构成 P e r l程序的语句、函数、运算符、数学算法和 其他所有元素,以确保句法正确,然后每次运行一个语句。 当 perl 解 释程序完成了从磁盘中读取你的程序的全部操作后,它即开始运行该程序,并 且继续运行,直到整个程序运行完成。当它完成程序的运行时, perl 解 释程序退出,将控制 权重新交给你的操作系统。 现在让我们来看一看 hello程序是如何“运行”的。 1.3.4 Perl程序的具体运行过程 Hello程序的第一行是: 下载 11 第1学时 Perl 入门使用 #!/usr/bin/perl 对于 Perl来说,代码行上的 # 符号后面的一切均被视为注释行。注释是指 Perl 将对它加以 忽略的一些东西。在某些情况下,程序的第一行上的 # !是不同的。它后面的路径名 /usr/bin/perl是到达 perl 解释程序的路径。如果 UNIX程序有一行是以 #!开头,后随一个解释 程序的路径,那么 U N I X就知道这是个程序,并且可以按照名字来运行。关于如何运行程序的 说明,请参见本学时结尾处的“专家答疑” 。 有些能够运行 P e r l 程序的 We b 服务器,比如 A p a c h e ,也对 #!这个程序行非常注意,并且 能够在没有 perl命令的显式说明下运行该程序。 现在我们正好是将 #!视为一个注释行。 下一个程序行是: print "Hello,World!\n"; 这里包含了许多内容。这一行构成了一个 P e r l 语句,它为 P e r l 标明了一项需要执行的操 作。 首先,这一行包含一个函数,称为 p r i n t 。这个 p r i n t 函数取出它后面的所有内容,并默认 显示在屏幕上。 print函数的输出结果,是直到分号(;)前的那部分内容。 P e r l中的分号是个语句分隔符。你应该在 P e r l程序中的各个语句之间放一个分隔符,以便 显示一个语句的结束和另一个语句的开始。 在这个例子中, p r i n t 函数显示了短语 H e l l o , Wo r l d !。程序行结尾处的 \ n 告诉 P e r l将一个新 的空行插入到它输出的短语的后面。短语前后的引号和 \ n告诉 P e r l,这是个文字串,不是另一 个函数。下一个学时将要非常详细地介绍字符串的内容。 1.3.5 必须知道的一些情况 P e r l被人们称为是一种自由格式的编程语言。这意味着 P e r l 语句在编写的时候并不是非常 严格。可以将空格、制表符,甚至回车符(它们称为白空间)插入 Perl 语句中的任何位置,这 实际上都没有关系。 但是有些位置不能随意插入白空间,这些位置是应该加以限制的位置。例如,不能在函 数名的中间插入空格, pr int 是个无效函数。另外不能将空格插入数字中,比如 25 61 这个数字 是不行的。像“ Hello World!”这样的文字串中的白空间当然可以显示为白空间。几乎任何其 他地方它都是有效的。你可以编写类似下面这样的 Perl 程序示例: 这个程序在功能上与原先的程序是相同的。 P e r l语言的这种自由格式特性使你的 P e r l程序 可以具有非常丰富的“样式” 。在程序的格式上可以有很大的随意性。不过请记住,总有一天 其他用户会查看你的程序的,因此你不能让他们看不懂。 本书中的程序所用的样式是相当保守的。有时为了清楚起见,或者为了节省空间,语句 被分成了若干行,因为 Pe r l的语句可能非常长。 P e r l的文档资料甚至提供了一个建议性的样式 指南,可以浏览该文档,以便了解有关的建议。可以搜索名字为 perlstyle的文档。 12 使用第一部分 Perl 基础 下载 P e r l 程序中的样式有时可能非常特殊。有的 P e r l 程序可以写成诗歌,甚 至俳句,这些都是有效的。有些令人难忘的 Pe r l 程序看上去就像是图画,不 过它们仍然能够做一些有用的工作。 Perl Journal 》 《 (网址是 h t t p : / / w w w. tP j . c o m )每年都要举行一次编写样式特殊的 Pe r l 程序的比赛,比赛的名字 是 Obfuscated Perl Contest 。你不应该采取这些程序项目的样式。 1.4 课时小结 在本学时中,我们学习了一些关于 P e r l和 P e r l 是如何运行的知识。随着你阅读本书其他章 节的内容,你会不断增加对它的了解。还学习了如何在你的系统上安装 Perl,并且如何来检验 它是否运行正确以及它的所有文档资料是否已经安装到位。最后,键入并且运行了你的第一 个Perl程序。接着分析了这个程序,并且进一步学习了 Perl如何运行的一些知识。 1.5 课外作业 1.5.1 专家答疑 问题: Perl运行的那些东西是称为 Perl脚本还是 Perl程序? 解答: 名字实际上并不重要。传统上,程序被编译成机器语言并且按照机器语言的形式 来存放,机器语言是可以多次运行的。而脚本可以被放入一个外部程序中,每当脚本运行时, 外部程序就将脚本转换成一些操作。 Perl的发明人 Larry Wall曾经说过: “脚本是你为操作人员 提供的东西,而程序则是你提供给用户的东西。 ”你可以随意称呼它们。在本书的其余章节中, 将它们称为 Perl程序,如果你学习成绩很好的话,那么你就可以称为一名 Perl程序员。 问题: 是否必须键入本书中的一些程序清单?有些程序清单非常长。 解答: 本书中的所有程序清单和程序示例,以及这些程序需要的数据文件等,都在本书 所附的光盘上。 问题: 在“运行程序”这一节中,讲到在 U N I X 下有一种比较简便的方法可以用来运行 Perl程序。究竟如何运行呢? 解答: 首先,必须确保程序的 #!行正确无误,同时路径名确实指向一个 p e r l解释程序; / u s r / b i n / p e r l 是它的通常位置,在有些机器上它的位置是 / u s r / l o c a l / b i n / p e r l。接着,必须使用 chmod命令,使该程序能够执行。如果是 hello程序,那么 UNIX的shell 命令是 chmod 755 hello 。 这项操作完成后,你可以键入 h e l l o 或 . / h e l l o ,运行该 P e r l程序。应该说明的是,在 U N I X 下, 不要将你的程序命名为“ t e s t ” U N I X的 s h e l l有一个命令的名字是 t e s t,当错误地运行 t e s t 命令 。 时,就会带来很大的麻烦。关于不能使用的其他程序名,请参见你的 shell的文档资料。 另外,如果使用光盘上的程序清单,必须修改 #!行,使之与你的系统上的 P e r l 位置相一 致,否则,你将必须从命令提示符下键入 perl programname 运行你的程序。 1.5.2 思考题 1) Perl 是编程语言的名字; perl 则 a. 也是该语言的名字。 下载 13 第1学时 Perl 入使用 b. 是解释程序的名字。 c. 是一个 DOS命令的名字。 2) 在何处总是可以找到 Perl文档资料的拷贝? a. http://www.microsoft.com b. http://www.perl.com c. http://www.perl.net 3) 在哪个手册页中能够找到 Perl句法的描述? a. perlsyn b. perlop c. perlfaq 1.5.3 解答 1) 答案是 b。不过, Perl安装后,它也是 DOS shell 中的一个有效的命令。因此 c也是对的。 2) 答案是 b。它也可以安装在你的系统上。 3) 答案是 a。除非你运行 perldoc perl ,否则无法明确知道能否在那里找到该描述。 1.5.4 实习 • 请浏览FAQ(常见问题 )。即使你不能理解它里面的所有内容,也能够大致了解 FAQ中可以 得到哪些类型的信息。 如果你喜欢通过浏览器来阅读它的内容,请搜索 http://www.perl.com,并在那里阅读它的 内容,不过应该仔细阅读才行。 ...
View Full Document

This note was uploaded on 11/27/2011 for the course CS Perl taught by Professor Guo during the Spring '09 term at Xiamen University.

Ask a homework question - tutors are online