Perl模塊編寫說明
更新時(shí)間:2008年06月06日 18:37:08 作者:
這兩天在用Perl編寫一些監(jiān)控腳本,其實(shí)寫代碼也是一件挺有意思的事情,就是挺廢時(shí)間的。而且,由于語法不太熟,基本想到一個(gè)東西都要先Google一下看怎么實(shí)現(xiàn)。
Perl的語法相對(duì)來說有點(diǎn)晦澀,主要是一些內(nèi)置變量和函數(shù)處理得相當(dāng)精巧,而過于精致的東西理解起來就有點(diǎn)費(fèi)力。相對(duì)于Shell,Perl在很多方面更加強(qiáng)大高效,比如Hash(關(guān)聯(lián)數(shù)組)就非常好用,如果要將不同主機(jī)發(fā)出來的告警信息發(fā)送到不同的責(zé)任人,在shell中要做非常多的if或者case判斷,修改起來也非常費(fèi)力,而使用關(guān)聯(lián)數(shù)組,則可以輕松實(shí)現(xiàn)該功能,代碼簡(jiǎn)潔,配置方便,一個(gè)字,爽。
Perl支持以模塊對(duì)代碼進(jìn)行封裝。著名的CPAN上就有非常多好用的Module,可以極大的減輕開發(fā)量。一個(gè)簡(jiǎn)單的模塊:
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相同,也就是上面這個(gè)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》在這里有一個(gè)在線中文版本的,可以看看。
作者:NinGoo 出處
Perl支持以模塊對(duì)代碼進(jìn)行封裝。著名的CPAN上就有非常多好用的Module,可以極大的減輕開發(fā)量。一個(gè)簡(jiǎn)單的模塊:
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相同,也就是上面這個(gè)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》在這里有一個(gè)在線中文版本的,可以看看。
作者:NinGoo 出處
相關(guān)文章
fdupe 是一個(gè)很小的 Perl 腳本,用來檢索指定目錄并找出其中重復(fù)的文件,該腳本是通過文件內(nèi)容來識(shí)別是否重復(fù)文件,而非文件名。fdupe 無需其他 Perl 腳本支持,運(yùn)行速度非???/div> 2013-03-03
Perl Mysql數(shù)據(jù)庫操作實(shí)現(xiàn)代碼
對(duì)于perl操作mysql的步驟,說的比較詳細(xì),建議大家好好看看,參考2009-01-01
perl寫的一個(gè)隨機(jī)編故事的程序(rand隨機(jī)函數(shù))
用perl寫的一個(gè)隨機(jī)編故事的程序,用到了rand隨機(jī)函數(shù),注釋也很詳細(xì),需要的朋友可以參考下2013-03-03
perl如何避免腳本在windows中閃一下就關(guān)閉
寫好了perl程序,運(yùn)行后,準(zhǔn)備等待結(jié)果輸出時(shí),結(jié)果雙擊后,看到屏幕閃了一下,然后什么都沒有了,根本沒有機(jī)會(huì)然你看到輸出的結(jié)果2013-03-03最新評(píng)論

