为什么 File::Spec 在子目录中的文件上删除“./”?

Why is File::Spec dropping './' on files in sub directories?

File::Spec"portably perform operations on file names" 的核心模块。这种行为对我来说很有意义,

# returns ./foo
File::Spec->catfile(".", "foo");

然而,这让我感到困惑。

# returns foo/bar
File::Spec->catfile(File::Spec->catfile(".", "foo"), "bar");
File::Spec->catfile("./foo", "bar");

对于一个应该标准化这些东西的图书馆,为什么我的 ./ 不见了?这种行为有原因吗?

把这个退回来真奇怪,

CP-JobApp/t/lib/Testing.pm
CP-JobApp/t/pod.t
CP-JobApp/t/find.t
./h
./problem1.pl

post进程文件命名模块returns是否正常?

File::Spec::Unix 规范路径的目录部分。

为什么它不规范化整个路径(以便 catfile('.', 'file') 产生 file)?不知道。这对我来说似乎是一个疏忽。欢迎提交错误报告。