FindBin错误的驱动器识别

时间:2014-05-20 13:58:17

标签: perl module path

让我们考虑一下脚本:

use FindBin;
print "$FindBin::Bin\n";

Windows 7,This is perl, v5.8.8 built for msys。它将产生以下结果:

C:\Test>perl catFileTest.pl
/c/Test

在我们的解决方案中广泛使用Perl进行构建,并且需要正确的路径(C:\Test)。

1 个答案:

答案 0 :(得分:3)

msys实用程序在unix仿真中执行。在该环境中,/c/Test确实是正确的。 C:\Test表示"当前工作目录中名为C:\Test的文件"。

我不知道msys是否提供了转换像cygwin这样的路径的实用工具。如果没有,你可以使用像

这样的东西
s{^/([a-z])(?:/|\z)}{\u$1:};
s{/}{\\}g;