10天搞定PERL语言之第一天(五岳之巅翻译版)

简介: 10天搞定PERL语言之第一天   翻译者:五岳之巅     一、序言       Perl这个脚本语言让我们能够在Linux系统中自动运行各种任务,使得管理Linux系统变得十分轻松。

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-getyum就可以,或者在光盘里找,再不行就装个别的发行版。毕竟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!”

 

 

相关文章
|
2月前
|
存储 自然语言处理 算法
Python 之父撰文回忆:为什么要创造 pgen 解析器?
Python 之父撰文回忆:为什么要创造 pgen 解析器?
24 2
|
2月前
|
SQL 人工智能 JavaScript
Python 潮流周刊第 38 期(摘要)+赠书5本
Python 潮流周刊第 38 期(摘要)+赠书5本
18 2
|
7天前
|
存储 设计模式 自然语言处理
Python面试常见问题集锦:基础语法篇
【4月更文挑战第13天】# Python面试必备:在求职Python开发岗位的过程中,扎实掌握基础语法是成功应对面试的关键。本篇博客将聚焦Python基础语法,梳理面试中常见的问题、易错点,并提供实用的代码示例,帮助您在面试中展现出深厚的技术功底,从容应对挑战。
27 0
|
2月前
|
编译器 API UED
Python 之父再发文:构建一个 PEG 解析器
Python 之父再发文:构建一个 PEG 解析器
19 1
|
6月前
|
Python Windows
编程小白的自学笔记三(Python正则表达式)
编程小白的自学笔记三(Python正则表达式)
|
7月前
|
安全 JavaScript 程序员
Ruby 代码清洁之道 (翻译)
Ruby 代码清洁之道 (翻译)
|
8月前
|
人工智能 Python
课件比赛要编程写软件了,那一起来学python吧!(本文送2本python书籍)
编程的语言有很多,我也和其他人一样,推荐大家从python入手,原因如下
52 0
|
11月前
|
存储 人工智能 Rust
Rust 正式发布八周年纪念日 2023.5.15
Rust 正式发布八周年纪念日 2023.5.15
133 0
|
测试技术 Python
软件测试|教你如何用Python获取昨天今天明天的日期
软件测试|教你如何用Python获取昨天今天明天的日期
196 0
软件测试|教你如何用Python获取昨天今天明天的日期
|
数据采集 数据处理 Python
python中字符串数据处理的那些方法------=为了面试武装到牙齿=----==《《满满的硬货》》-----====实用派(2)
python中字符串数据处理的那些方法------=为了面试武装到牙齿=----==《《满满的硬货》》-----====实用派(2)
134 0
python中字符串数据处理的那些方法------=为了面试武装到牙齿=----==《《满满的硬货》》-----====实用派(2)

热门文章

最新文章