检查当前目录中是否存在文件名

Checking if filename exists in current directory

我有一个正在尝试修改的脚本,以便根据其执行的位置,它会检查是否存在名为 regression_user.rpt[ 的文件=22=] 如果是这样,它将创建一个名为 regression_user1.rpt 的新文件。我找到了解决方案,但我不确定如何更改它以执行我想要的操作。

我有以下内容:

my $filename = 'c:\temp\test.txt';
if(-e $filename){
   //Create file with new name
   print("File $filename exists\n");
}else{
   //Create base file
   print("File $filename does not exists\n");
}

除此之外,$filename 的路径是可变的。有没有办法将执行位置作为变量合并到此检查中?

这样做的目的是确保我不会覆盖现有文件(发生了太多次)。

如果执行位置是指当前工作目录,则您只需要以下内容:

my $filename = 'test.txt';

如果执行位置是指在其中找到正在执行的脚本的目录,则可以使用以下内容:

use FindBin qw( $RealBin );

my $filename = "$RealBin/test.txt";