Perl模塊編寫說明
更新時間:2008年06月06日 18:37:08 作者:
這兩天在用Perl編寫一些監(jiān)控腳本,其實寫代碼也是一件挺有意思的事情,就是挺廢時間的。而且,由于語法不太熟,基本想到一個東西都要先Google一下看怎么實現(xiàn)。
Perl的語法相對來說有點晦澀,主要是一些內(nèi)置變量和函數(shù)處理得相當精巧,而過于精致的東西理解起來就有點費力。相對于Shell,Perl在很多方面更加強大高效,比如Hash(關(guān)聯(lián)數(shù)組)就非常好用,如果要將不同主機發(fā)出來的告警信息發(fā)送到不同的責任人,在shell中要做非常多的if或者case判斷,修改起來也非常費力,而使用關(guān)聯(lián)數(shù)組,則可以輕松實現(xiàn)該功能,代碼簡潔,配置方便,一個字,爽。
Perl支持以模塊對代碼進行封裝。著名的CPAN上就有非常多好用的Module,可以極大的減輕開發(fā)量。一個簡單的模塊:
package NinGoo;
require Exporter;
use strict;
use warnings;
our @ISA = qw(Exporter);
our @EXPORT = qw(fun_public); #要輸出給外部調(diào)用的函數(shù)或者變量,以空格分隔
our @version = 1.0;
sub func_private{
print "This is a private function";
}
sub func_public{
print "Hello,world\n";
func_private();
}
1;
__END__
模塊的文件名一般以.pm做后綴,名字和package相同,也就是上面這個Module的名字為NinGoo.pm。然后在普通的.腳本中調(diào)用:
#!/usr/bin/perl -w
# creator: NinGoo
# function: test perl module
BEGIN {
push (@INC,'/home/module');
}
use strict;
use NinGoo;
func_public();
O'Relly出版了一系列Perl的圖書,比較著名的大駱駝《Programming Perl》在這里有一個在線中文版本的,可以看看。
作者:NinGoo 出處
Perl支持以模塊對代碼進行封裝。著名的CPAN上就有非常多好用的Module,可以極大的減輕開發(fā)量。一個簡單的模塊:
package NinGoo;
require Exporter;
use strict;
use warnings;
our @ISA = qw(Exporter);
our @EXPORT = qw(fun_public); #要輸出給外部調(diào)用的函數(shù)或者變量,以空格分隔
our @version = 1.0;
sub func_private{
print "This is a private function";
}
sub func_public{
print "Hello,world\n";
func_private();
}
1;
__END__
模塊的文件名一般以.pm做后綴,名字和package相同,也就是上面這個Module的名字為NinGoo.pm。然后在普通的.腳本中調(diào)用:
#!/usr/bin/perl -w
# creator: NinGoo
# function: test perl module
BEGIN {
push (@INC,'/home/module');
}
use strict;
use NinGoo;
func_public();
O'Relly出版了一系列Perl的圖書,比較著名的大駱駝《Programming Perl》在這里有一個在線中文版本的,可以看看。
作者:NinGoo 出處
相關(guān)文章
perl中srand()與time的函數(shù)使用方法介紹
這篇文章主要介紹了perl中srand與time函數(shù)的使用,需要的朋友可以參考下2013-03-03perl 變量 $/ 的用法解析 上下文為行模式時,$/ 定義以什么來區(qū)分行
默認狀態(tài)下,很顯然都是用\n來區(qū)分行,\n也被我們稱作為換行符。當讀取序列時,按行來讀取時,就是以換行符為標準2013-03-03