2012-08-08 24 views
2

有没有办法使用test :: simple来检查文件是否存在?我相当新的Perl和我阅读所有的测试::教程,简单。我假设我需要在模块中创建一个子组件,但是我可以只添加常规的Perl代码来检查文件吗?如果是这样,我怎么从测试文件中调用它?测试::简单检查文件存在

对不起,我没有代码,因为我真的不明白这一点。

回答

5

这应该工作

$filename = '/path/to/your/file.doc'; 
if (-e $filename) { 
print "File Exists!"; 
} 

要查看该文件是否允许读取,写入或执行我们可以用这些代替-e以上:

Readable: -r 
Writable: -w 
Executable: -x 

使用测试::简单

use Test::Simple tests => 1; 
my $filename='/path/to/your/file.doc'; 

ok(checkfile($file)==1,'File found'); 

sub checkfile{ 
    if (-e $_[0]) { return 1;} 
    else { return 0; } 
} 

OR

use Test::Simple tests => 1; 
my $filename='/path/to/your/file.doc'; 

ok(-e $filename,'File found'); 
+0

你甚至都不需要做的是在子程序中,你可以做这样的:'OK(-e $文件,“文件存在”);' – chipschipschips 2012-08-09 04:30:53

+0

子程序的目的是只需调用具有我想检查的文件名的子例程,就可以使用它来检查多个文件。只是一个奇特的方式。 – Annjawn 2012-08-09 04:35:07

0

Test::File似乎非常适合这种需求。

use Test::File; 
file_exists_ok $filename, "Check the file exists";