如何从perl模块打开文件

时间:2015-05-12 08:17:41

标签: perl

我有一个名为Conf.pm的模块,它会打开一个名为conf.json的文件。 来自conf.pm的conf.json相对路径是“... / conf / conf.json”;

但是当我在其他文件夹中的脚本中包含Conf.pm时,相对路径会发生变化,而Conf.pm则找不到conf.json。

如何从Conf.pm打开conf.json。

2 个答案:

答案 0 :(得分:0)

这里的技巧是使用模块FindBin,它允许您在模块中“相对于我的位置”工作。

.pm添加:

use FindBin;
my $home_path = $FindBin::RealBin; 
my $json_path = $home_path."/../conf/conf.json";

答案 1 :(得分:0)

您可以使用

use File::Basename;
my $dirname = dirname(__FILE__);

以获取当前脚本的路径(即conf.pm),然后将../conf/conf.json添加到其中