Perl脚本使文件名的最后4个字符全部大写

时间:2012-04-02 20:31:32

标签: perl

该行是什么使得文件名的最后4个字符全部为大写?我试图将文件名从。)gh4567_yh7l_jk12转换为b。)gh4567_yh7l_JK12我需要它来使最后四个字符全部大写,而不更改第一个字符。

#!/usr/bin/perl

chdir "folder path";

@files = `ls *.tif`; chomp @files;

foreach $oldname (@files)
{
    $newname = $oldname;
    #$newname =~ s/(^.{1,8})/\U$1/e;
    $newname =~ s/(^.{8})/uc($1)/e;

    print "$oldname -> $newname\n";
    rename("$oldname","$newname");
}

1 个答案:

答案 0 :(得分:2)

正则表达式记录在perlre

[由于缺乏工作而导致家庭作业的回答有限。]