펄 이름바꿔서 파일복사 질문이요!

majestic의 이미지

#!/usr/bin/perl -w
 
use File::Basename;                                                       # 모듈
use File::Copy;
use Cwd;
use File::Find::Rule;
 
chdir "../" or die;
 
$directory = getcwd();
 
my $fail_log;
my $targetDir = "/ex";
my $targetDevice;
my $backupPath;
 
my @files = File::Find::Rule->file()
                            ->name( '*.AMAP')
                            ->in($directory);
 
if($#files <1)
{
    die;
}       
 
foreach my $file(@files)
{
 
    if(not -d $file)
    {
 
	   copy($file, $targetDir) or die "Can't move";
 
    }
 
}
 
unlink glob "*.AMAP" or die;
 
chdir "../" or die;
chdir $targetDir or die;
print getcwd, "\n";
 
 
foreach my $file(@files)                                #문제점
{
 
    if(not -d $file)
    {
	  my ($fileNameOnly, $dir, $ext) = fileparse($file, '\.[^.]*');
 
	  copy($file, "경로") or die "Can't move";
 
	  rename($file, $fileNameOnly....?)
 
 
    }
 
}

간단하게 코드를 짜보다가 디렉터리 A안에 존재하는 Backup라는 디렉터리(경로)에 디렉터리ex라는 폴더 안에 있는 파일을 파일이름에다 날짜와시간등을 붙여서 복사하고싶은데 (즉 ex디렉안파일-> A/Backup로 파일복사)문제점이 생겼습니다.

1. 경로에다 경로를 넣어도 그 경로에 복사가 안되는 이유와,

2. 경로에다 복사할 파일은 파일이름에 날짜와 시간등을 추가해서 복사하고 싶은데(펄실행시 현재날짜시간) rename함수를 쓰는건 알겠는 어떻게 접근해야될지모르겠네요 ㅠㅠ

참고로 펄파일 실행위치는 디렉터리A안에 B라는 디렉터리안에있습니다.

majestic의 이미지

해결했습니다 !

$fileNameOny."_".$날짜지정함수.$ext이런식으로하면되군요!