如果我在C:\ folder1 \ folder2路徑中有一個script.pl,例如當我使用Cwd時,它當然會返回C:\ folder1 \ folder2作爲我當前的工作目錄。但如果我能我script.pl內改變我的工作目錄使用更改perl腳本中的目錄以查找模塊
chdir "C:/folder1";
所以我現在可以看看C I在想:\文件夾1任何我所需要的模塊。
如果我在C:\ folder1 \ folder2路徑中有一個script.pl,例如當我使用Cwd時,它當然會返回C:\ folder1 \ folder2作爲我當前的工作目錄。但如果我能我script.pl內改變我的工作目錄使用更改perl腳本中的目錄以查找模塊
chdir "C:/folder1";
所以我現在可以看看C I在想:\文件夾1任何我所需要的模塊。
是的,你就可以這樣做,但它不會改變其中use
和require
找你,包括模塊。它會影響的是文件操作如open
將查找用相對路徑指定的文件。
你需要的是the lib
pragma,這樣
use lib 'C:/folder1';
在程序的頭部。這會將目錄添加到@INC
這是Perl搜索包含模塊的內置目錄數組。
你可以,但你不應該。而是使用the lib
module包括替代模塊根:
use lib 'C:/folder1';
use My::Module; # which is in C:/folder1/My/Module.pm