+ -
当前位置:首页 → 问答吧 → perl 如何判断文件是否存在 -e 好像不行啊

perl 如何判断文件是否存在 -e 好像不行啊

时间:2011-03-08

来源:互联网

我用
$filename ="/home/abc.txt";

if( -e $filename)
{
   print "file exist\n";
}
else
{
   print "file no exist\n";
}

好像不行呀

作者: ztj2247   发布时间: 2011-03-08

好像是对的呀

作者: Mr-Summer   发布时间: 2011-03-09

可能跟版本有关系,我刚在perl 5.12上尝试,-e是有效果的,lz用的是那个版本?

作者: bruce_wang_jane   发布时间: 2011-03-09

确实有
  1. /home/abc.txt
复制代码
这个文件吗?

作者: longbow0   发布时间: 2011-03-09

可以啊,我的PERL是

This is perl, v5.8.5 built for x86_64-linux-thread-multi

作者: ajdan4q   发布时间: 2011-03-09

你就把文件直接放到 /home 了

作者: zhlong8   发布时间: 2011-03-09

  1. $filename ="/home/abc.txt";

  2. if( -e $filename)
  3. {
  4.    print "file exist\n";
  5. }
  6. else
  7. {
  8.    print "file no exist\n";
  9. }
复制代码
print "$filename exists";
or
print "$filename not exists";

作者: 只爱睡觉   发布时间: 2011-03-09

cat test.pl
#!perl
use strict;

my $filename ='/home/v-guhe/tmp/abc.txt';

if(-e $filename)
{
   print "file $filename exist\n";
}
else
{
   print "file $filename no exist\n";
}
BASH-/home/v-guhe/tmp %perl test.pl
file /home/v-guhe/tmp/abc.txt exist
BASH-/home/v-guhe/tmp %

作者: dahe_1984   发布时间: 2011-03-09

LZ你是用什么用户运行这支程序的?有可能这个用户都没有权限进入/home
另外有什么运行报错的没。“不行”到底是什么,具体点嘛

作者: seufy88   发布时间: 2011-03-09