我想用Perl重命名文件。Example_22VOO0142321.xml
⇒ 22VOO0142321.xml
编号不同,但example_必须保留。我如何从文件名中删除example_?
opendir( D, "$source_dir" ) or mail_die("Fout bij openen van $source_dir : $!");
my @allfiles = grep { -f "$source_dir/$_" } readdir D;
closedir D;
my @examplefiles = grep { /example_.+(\.xml)$/i } @allfiles;
my $file_name;
foreach $file_name (@examplefiles) {
??
}
1条答案
按热度按时间ni65a41a1#
几乎可以肯定,使用File::Copy会更好(这里的“几乎”一词只是一种限制,您真的不想在低级函数中这样做),但您可以这样做:
但是,重申一下,你真的不想这样做。使用File::Copy代替。来自
perldoc rename
:“此函数的行为因您的系统实现而有很大的不同。”不要使用它。