我有一个名为Conf.pm的模块,它会打开一个名为conf.json的文件。 来自conf.pm的conf.json相对路径是“... / conf / conf.json”;
但是当我在其他文件夹中的脚本中包含Conf.pm时,相对路径会发生变化,而Conf.pm则找不到conf.json。
如何从Conf.pm打开conf.json。
答案 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
添加到其中