我需要找到我正在运行的Perl脚本的完整路径,即
>对于〜/ dir / my.pl我需要它为“/home/user/dir/my.pl”. $0会给我“〜/ dir / my.pl”.
> for ./my.pl我仍然需要“/home/user/dir/my.pl”
等等谢谢!
解决方法
使用
FindBin模块:
$cat /tmp/foo/bar/baz/quux/prog #! /usr/bin/perl use FindBin; print "$FindBin::Bin/$FindBin::Script\n"; $PATH=/tmp/foo/bar/baz/quux prog /tmp/foo/bar/baz/quux/prog $cd /tmp/foo/bar/baz/quux $./prog /tmp/foo/bar/baz/quux/prog