perl中重命名文件的方法

发布时间:2020-02-14编辑:脚本学堂
perl中的重命名,与dos中的rename类似,命令格式为:rename "old","new";
有点类似于 mv 命令。
rename 失败时返回假,并在 $! 中设置操作系统的错误信息。因此可用 or

perl中的重命名,与dos中的rename类似,命令格式为:rename "old","new";
有点类似于 mv 命令。
rename 失败时返回假,并在 $! 中设置操作系统的错误信息。因此可用 or die 或 or warn 显示给用户。

下面看一个例子:把所有以 .old 结尾的文件修改为以 .new 结尾。
 

复制代码 代码如下:
foreach my $file (glob "*.old") {
   my $newfile = $file;
   $newfile =~ s/.old$/.new/;   由于 .new 不是模式,所以点号不用加反斜杠。
   if (-e $newfile) {
       warn "can't rename $file to $newfile:$newfile exists.n";
   } elsif ( rename $file, $newfile) {
       } else {
           warn "rename $file to $newfile failed:$!n";
       }
   }