-4
ファイル名の最後の4文字をすべて大文字にする行は何でしょうか? )gh4567_yh7l_jk12からb。)gh4567_yh7l_JK12最初の文字を変更せずに最後の4文字をすべて大文字にする必要があります。ファイル名の末尾4文字をすべて大文字にするPerlスクリプト
#!/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");
}
私は本当に新しいです。これまで私は考えていた\t $ newname =〜s /({4}。^)/ uc($ 1)/ e; – user1295706
@ user1295706:これをあなたの質問に編集して、なぜこれがあなたがしたいことをしないのかを説明してください(つまり、サンプルの入力、出力、そして出力として何を望みますか) – Mat
これは私が試したものです。正しい:#!/ usr/bin/perl "ディレクトリパス"; @files = 'ls * .tif'; chomp @files; foreach $ oldname(@files) { \t $ newname = $ oldname; \t $ newname =〜s /(^。{8})/ uc($ 1)/ e; \t \t "$ oldname - > $ newname \ n"; \t rename( "$ oldname"、 "$ newname"); } – user1295706