Perl 调试打印 HASH 内容

在调试 Perl 程序时常常需要打印哈希表内容,虽然可以直接使用 foreach 打印,但数据复杂了就难办了,此时可以将 Hash 表转换为 json 文本再打印: use JSON; my $data = {'info'=> "test", 'struct' => {'test1'=>'test1', 'test2'=>'test2'}};...

December 23, 2021 · 1 分钟 · 270 字 · Tianlun Song

perl '->' 和 '::' 的区别 | 方法和函数的区别

最近在看 PVE 源码时看到这样一段: # old code uses PVE::RPCEnvironment::get(); 使用冒号表示调用函数 # new code should use PVE::RPCEnvironment->get(); 使用箭头表示法调用方法 sub get { return PVE::RESTEnvironment->get(); } 好奇两种调用方式是什么区别,经过研...

November 24, 2021 · 2 分钟 · 516 字 · Tianlun Song

Perl 编译安装 (Linux)

Centos 下演示编译安装 Perl 环境的方法....

November 5, 2021 · 1 分钟 · 347 字 · Tianlun Song

Perl 程序后台执行示例

最近阅读 PVE 源码发现一处源码这样使用了 fork() 方法: $spid = fork(); if (!defined ($spid)) { die "can't put server into background - fork failed"; } elsif ($spid) { # parent exit (0); } 自己写示例发现这种方法可以使程序进入后台执行状...

August 26, 2021 · 1 分钟 · 266 字 · Tianlun Song

Perl 面向对象之基类(use base)

use base somemodule; # 相当于以下两句的结合: BEGIN{ use somemodule (); push @ISA, qw(somemodule); } # 也可以同时 use base 两个或者两个以上的模块,即多继承,例如: use base qw(Foo Bar); BEGIN { use Foo (); use Bar (); push @ISA, qw(Foo Bar); } Perl 里...

August 25, 2021 · 1 分钟 · 166 字 · Tianlun Song