10天搞定PERL语言之第一天
翻译者:五岳之巅
一、序言
Perl这个脚本语言让我们能够在Linux系统中自动运行各种任务,使得管理Linux系统变得十分轻松。学习它既容易又好玩,一眨眼的工夫你就可以自己编写那些让你的工作变得更加安逸的脚本代码了。在这10篇文章中,我将从基础讲起,然后一步步地深入剖析点复杂概念和高级技巧,我试图写的通俗点,好让那些编程新手也能很快上手。
二、Perl的渊源
早在1987年,Larry Wall创建了一种脚本语言----“实际抽取及报告语言”,被当做Unix操作系统的一种文本处理语言。其实,当时已经有很多工具和语言了(比方说Unix shells, sed, awk, C等等),并且很多程序员选择其中的一部分进行了应用。Larry Wall希望这个语言能够满足文本处理方面的各种需求,这样程序员便可以在做干活时光用Perl就可以完成,省去了加入别的工具的麻烦。此外,虽然Perl设计得简单易学又有快速执行能力,却一点也不影响perl的能力,它具备很多强大的高级功能。
Perl具有之前的各种语言都没有的新特性,让它很快红透了大江南北。1994年,Perl 5稳定版的推出使其成为一门大众化的程序设计语言。
三、Perl的特点
Perl语言真是很特别。只要我们陆续学习了它的各种不同的特点,你就会体会到这一点。Larry Wall使用了大量的语言方面的知识开发出了Perl。有的人甚至把它当做一门自然语言。它的词汇极其丰富,而且语法非常有弹性。Perl程序员总说道“条条大路通罗马”。事实上,你真的可以按照你的方式写出你的风格的perl脚本。还有人用perl作诗呢。因为这些原因,有的Perl脚本看来是非常难读。不过,写perl,却是件快事。
四、Perl解释器
Perl是一种解释型的语言。这就意味着你编写的Perl程序需要一个“解释器”才能够运行。比如:你写了一个Perl的脚本程序,起名为“myScript.pl”(.pl通常是Perl脚本的后缀),你不能直接运行它。必须请求“解释器”解释后才能运行:
perl myScript.pl
在这里例子中,myScript.pl是你编写的perl脚本,perl就是解释器。
五、Perl的安装
perl解释器是一个基本的工具软件,通常在Linux的各种发行版中被默认安装。下面就例举了一些默认安装的发行版:
Suse 10.1
Fedora Core 5
Debian Testing
Ubuntu 5.10
Mandriva 2006
Slackware 10.2
Mepis 3.4-3
Gentoo 2006.0
Knoppix 5.0
如果你想钻牛角尖,把所有安装perl的发行版都找出来,那么“distrowatch.com”这个网站也许能够满足你的要求,请查找:
http://distrowatch.com/search.php?pkg=perl&pkgver=5.8.8#pkgsearch
为了查看你的电脑是否安装了perl解释器,你可以在终端中输入这条命令:
perl -v
如果已经安装,则会返回安装的perl解释器的版本号,如:
clem@pluto:~> perl -v
This is perl, v5.8.8 built for i586-linux-thread-multiCopyright 1987-2006, Larry WallPerl may be copied only under the terms of either the Artistic License or theGNU General Public License, which may be found in the Perl 5 source kit.Complete documentation for Perl, including FAQ lists, should be found onthis system using "man perl" or "perldoc perl". If you have access to theInternet, point your browser at http://www.perl.org/, the Perl Home Page.
如果没有安装,你必须安装和你的linux发行版相对应的perl软件。简单的话,使用apt-get或yum就可以,或者在光盘里找,再不行就装个别的发行版。毕竟perl是个非常基本的工具,一般的发行版都应该具备。
六、细看Perl解释器
通常,我们会先写个perl脚本文件,然后用perl解释器执行它。其实,你也可以单纯地一句一句地在交互模式下执行,这时不能含有参数。但本课程的着眼点可不在此,我们将使用脚本文件的方式运行perl程序。
为了运行perl脚本,你可以把perl脚本文件名作为参数送给perl解释器执行:
perl myScript.pl
或者你可以告诉Perl脚本解释器的路径,并将该脚本设为可执行权限,从而运行它。作为脚本,后者是通常采用的方法,我们也建议你这样使用。这时脚本中的第一句话应该告诉shell如何解释本文件。这一行一般是给出perl编译器的路径:
#!/usr/bin/perl
注意:perl解释器通常都安装在/usr/bin下,不过你的系统不一定如此。不如输入“which perl”确定下:
clem@pluto:~> which perl
/usr/bin/perl
同时,你也必须让你的perl脚本能够执行并具有合适的权限:
chmod a+rx myScript.pl
一旦该脚本能够执行,这时就可以直接运行它了。脚本中的第一行以“#!”开始,为的是让shell运行其后边的perl解释器。换句话讲,多亏了这一行小字,你才可以直接运行perl脚本。
./myScript.pl
如果你现在还不清楚这个“解释器”究竟是个什么东东,没关系,只要你知道是shell以你的名义运行了这个解释器,而又是这个解释器运行你的脚本文件就可以了。
七、这就是你的第一个perl脚本
如果你已经安装了Perl语言的解释器,现在你就可以开始编写你的第一个脚本了,内容比较简单:向屏幕输出“Hello World”(这个程序是真的没啥用处,这点我承认,但是这就是传统:学一门新语言时如果不是从Helloworld开始就有点不地道。当然,也是因为它最简单、最容易入门嘛)。
好了,开始创建一个名为helloWorld.pl的文件,然后在里面写入下面的代码:
#!/usr/bin/perl
print "Hello World! n";
改变文件权限:
chmod a+rx helloWorld.pl
执行脚本:
./helloWorld.pl
接着,就像你想的那样,“Hello World!”