转自:http://www.zebraol.com/?p=35
我们知道,Perl的FindBin模块可以取得当前正在运行的Perl脚本的文件路径以及文件名。
可是,如果多个文件嵌套调用呢,例如文件A调用文件B,那么B中的FindBin返回的脚本名称应该是B还是A呢?
这里做一个试验,详述如下:
一、被调用脚本in.pl
#!/usr/bin/perl -w use FindBin; use strict; sub fun { print "$FindBin::Bin/$FindBin::Script\n"; } 1;
二、主调脚本p.pl
#!/usr/bin/perl -w use strict; require "in.pl"; fun();
三、主调脚本执行结果:
$./p.pl /data/home/anybody/p.pl