首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Perl的File::Basename重命名文件扩展名

使用Perl的File::Basename重命名文件扩展名
EN

Stack Overflow用户
提问于 2019-05-18 04:09:05
回答 1查看 71关注 0票数 0

收到以下警告消息时,我如何摆脱它?

Use of uninitialized value $suffix in concatenation (.) or string at /usr/share/perl5/File/Basename.pm line 167. Use of uninitialized value $suffix in substr at /usr/share/perl5/File/Basename.pm line 169.

正在使用的代码:

代码语言:javascript
复制
use File::Copy;
use File::Basename qw(fileparse);

my @mtf;
my $name;
my $dir;
my $ext;
my $ascii;
my $suffix="";

($name, $dir, $suffix) = fileparse(@mtf,qr/\.[^.]*$/);
$name =~ s/\.$suffix$//;
system("cp $mtf[0] $name.ASCII");
$ascii = "$name.ASCII";
EN

回答 1

Stack Overflow用户

发布于 2019-05-18 05:30:06

fileparse(@mtf,qr/\.[^.]*$/);没有任何意义。因为您必须确保@mtf只包含一个元素才能正常工作,所以使用数组而不是标量是没有意义的。

您没有显示@mtf包含的内容,但是它显然不是单个元素,或者单个元素与正则表达式模式\.[^.]*$不匹配。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56192934

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档