zoukankan      html  css  js  c++  java
  • write yourself own perl module

    这两天在用Perl编写一些监控脚本,其实写代码也是一件挺有意思的事情,就是挺废时间的。而且,由于语法不太 熟,基本想到一个东西都要先Google一下看怎么实现。Perl的语法相对来说有点晦涩,主要是一些内置变量和函数处理得相当精巧,而过于精致的东西理 解起来就有点费力。相对于Shell,Perl在很多方面更加强大高效,比如Hash(关联数组)就非常好用,如果要将不同主机发出来的告警信息发送到不 同的责任人,在shell中要做非常多的if或者case判断,修改起来也非常费力,而使用关联数组,则可以轻松实现该功能,代码简洁,配置方便,一个 字,爽。

    Perl支持以模块对代码进行封装。著名的CPAN上就有非常多好用的Module,可以极大的减轻开发量。一个简单的模块:

    package NinGoo;
    require Exporter;
    use strict;
    use warnings;

    our @ISA = qw(Exporter);
    our @EXPORT = qw(fun_public); #要输出给外部调用的函数或者变量,以空格分隔
    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。然后在普通的.脚本中调用:

    #!/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》在这里有一个在线中文版本的,可以看看。

  • 相关阅读:
    删除目录软链接注意事项
    使用Dnsmasq搭建本地dns服务器上网
    在CentOS 7 上安装广告服务器 Revive Adserver
    CentOS6 Squid代理服务器的安装与配置
    CentOS6 PXE+Kickstart无人值守安装
    Redis的初步安装
    创建交互式shell脚本对话框
    C 捕获 lua 异常错误
    iic 之24C256存储器 及PCF8563
    汉字的编码与字模点阵小结
  • 原文地址:https://www.cnblogs.com/Cmpl/p/2142837.html
Copyright © 2011-2022 走看看