在一个函数中,我得到一个文件的引用。那可能是一种格式dir1/subdir/filename.txt
perl 中有没有办法:
- 如果文件不存在,则创建它,如果不存在则创建目录结构
- 这种方式可以保证如果 2 个脚本尝试同时执行相同的操作,那么不会出错(例如,最终会出现损坏/锁定的文件等)?
在一个函数中,我得到一个文件的引用。那可能是一种格式dir1/subdir/filename.txt
perl 中有没有办法:
my $filename="dir1/subdir/filename.txt";
if (-e $filename)
{
print "file exists";
open( FILE, '<', $filename ) or die 'Could not open file: ' . $!;
}
elsif (!-e $filename)
{
print "file does not exist";
}
-e 和 -f 都可以用来检查文件是否存在
2.为了避免冲突,我认为你可以在文件名中创建带有创建时间的文件。但是,我不确定您是否可以使用相同的内容进行创建。