Unix/Linux脚本编程:perl部分本部分共包括以下部分:基本介绍变量,:基本介绍 Perl是PracticalExtractionandReportLanguage(实用摘录和报告语言)的简称,是由LarryWall所发起的。。 Perl的设计目标是帮助UNIX用户完成一些常见的任务,这些任务对于Shell来说过于沉重或对移植性要求过于严格。Perl语言中包含了C、C++、shell,script、sed、awk这几个语言的语法,它最初的目的就是用来取代UNIX中sed/awk与脚本语言的组合,用来汇整信息,产生报表。因此Perl语言要远远比前面讲的BASH复杂和功能强大。 Perl的设计原则或者说Perl的设计哲学是以实用为第一优先,也就是力图使Perl语言容易使用、有效率、而且完整。 Perl是原先运行于UNIX和类UNIX系统,现在已可以方便地在OS/2,Windows9x,Windows/NT等系统下运行。 Perl是一种解释运行的语言,和BASH程序一样,一般Perl程序的第一行需注明自己是一个Perl程序而不是Shell程序,所以一般将下面一行语句: #!/usr/bin/perl 作为文件的第一行。 Perl由于引入了模块的设计思想,随着版本的改进,功能越来越强。现在Perl的功能已经超乎原先设计时的想象,几乎任何事都可以做到,也变成每一部工作站必备的标准工具了。Perl最为著名的一点就是它对字符串的处理,对文字信息处理的巨大需求,使得Perl的应用如日中天,而且Perl语言也的确是一个非常优秀的文字信息处理语言。 return2:变量, 简单变量Perl的HelloWorld是怎么写的呢?请看下面的程序:#!/usr/bin/perlprint"HelloWorld"这个程序和前面BASH的HelloWorld程序几乎相同,只是第一行换成了#!/usr/bin/perl,还有显示的时候用的是print,而不是echo。有了前面BASH基础和C语言的基础,,是Perl处理的最简单的数据类型。标量可以是数字(如2,),也可以是字符串。Perl中的标量变量以美元符号"$"和一个字母开始,后面可以跟字母、数字和下划线,Perl的变量区分大小写,因此$a和$A是代表不同的变量。和BASH中不同的是Perl语言中的变量即使是在最初赋值的时候也必须在变量前面加上"$"符号,而且Perl不要求"="左右必须没有空格。虽然Perl中和BASH一样,没有变量类型的概念,我们还是可以把简单变量分为数值型和字符串型来理解。在赋值时,如果是赋值成字符串,则需要在字符串两边加上双引号(或单引号);如果是数值则就不用了,而且Perl中还可以接受8/16(以0开头/以0x或0X开头)进制的整数,,-,--e6这样的浮点数。关于简单变量举例如下:$a=23;$a="HowAreYou?";$a=010;(表示十进制的8)$a=0x10;表示十进制的16)$a=0X10;表示十进制的16)和C语言类似,在双引号之中可以用反斜杠表示一些特殊转义字符,见下表:结构含义\n换行\r回车\t水平置表符\f换页符\b退格\v垂直置表符\a响铃\eEsc\007任一八进制ASCII值(这里007表示bell)\任一“控制”字符\\反斜杠\"双引号\l下一字母小写\L以后所有字母小写直到\E\u下一字母大写\U以后所有字母大写直到\E\E结束\L和\U另外在Perl语言里,我们常会看到my这样的变量定义,如:my$a="localvar";这表示$a是一个程序块的局部变量。 :perl中的数组数组是标量数据的有序列表。数组可以含从0个元素大小直到你计算机内存可以支持的大小。数组用括号内以逗号分隔的一系列元素来表示。如:***@a=(1,2,3,4,5)***@b=("fang",1971,)在Perl中对数组变量和前面的简单变量的存储是在不同的空间中,对数组的引用需要在变量前加"@"符号。数组的赋值由下面几种用法需要注意:***@a=(1,2,3);#初始化一个整数数组。$a=***@a;#这里表示将数组***@a的长度赋给$a,此时$a和***@a不是一个变量,他们不在一个存储空间里,引用时不会发生混淆。($a,$b,$c)=(
UnixLinux脚本编程perl部分 来自淘豆网m.daumloan.com转载请标明出处.