macos – 为什么Perl不能找到File :: BaseName-> fileparse?
发布时间:2020-12-15 23:20:34 所属栏目:大数据 来源:网络整理
导读:在OS X 10.8.4上,在测试perl程序中: #!/usr/bin/perluse warnings;use strict;use File::BaseName;my $fname = "/usr/local/junk.txt";my ($name,$path,$suffix1) = File::BaseName-fileparse($fname,qr'.[^.]*'); 我收到错误消息的任何想法: Can't loca
在OS X 10.8.4上,在测试perl程序中:
#!/usr/bin/perl use warnings; use strict; use File::BaseName; my $fname = "/usr/local/junk.txt"; my ($name,$path,$suffix1) = File::BaseName->fileparse($fname,qr'.[^.]*'); 我收到错误消息的任何想法: Can't locate object method "fileparse" via package "File::BaseName" (perhaps you forgot to load "File::BaseName"?) 就此而言,为什么我需要放置File :: BaseName?如果我不这样做,它说 Undefined subroutine &main::fileparse perl -v给出:
如果它有帮助,当我使用File :: Spec并参考File :: Spec-> splitpath时,它工作正常(但我必须把整行). 解决方法
区分大小写:
Basename 用小写字母“N”写成.
Acme::require::case将防止这个问题.
此外,在导入File :: Basename模块后,您不必为fileparse使用限定名称: #!/usr/bin/perl use warnings; use strict; use File::Basename; # !!! my $fname = "/usr/local/junk.txt"; my ($name,$suffix1) = fileparse($fname,qr'.[^.]*'); # !!! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |