I don't think the -x tests mean what you think they mean.

>From "perldoc -f -x":

       -r  File is readable by effective uid/gid.
       -w  File is writable by effective uid/gid.
       -x  File is executable by effective uid/gid.
       -o  File is owned by effective uid.

       -R  File is readable by real uid/gid.
       -W  File is writable by real uid/gid.
       -X  File is executable by real uid/gid.
       -O  File is owned by real uid.

       -e  File exists.
       -z  File has zero size (is empty).
       -s  File has nonzero size (returns size in bytes).

       -f  File is a plain file.
       -d  File is a directory.
       -l  File is a symbolic link.
       -p  File is a named pipe (FIFO), or Filehandle is a pipe.
       -S  File is a socket.
       -b  File is a block special file.
       -c  File is a character special file.
       -t  Filehandle is opened to a tty.

       -u  File has setuid bit set.
       -g  File has setgid bit set.
       -k  File has sticky bit set.

       -T  File is an ASCII text file (heuristic guess).
       -B  File is a "binary" file (opposite of -T).

       -M  Script start time minus file modification time, in days.
       -A  Same for access time.
       -C  Same for inode change time (Unix, may differ for other
platforms)




-----Original Message-----
From: Dave Adams [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, November 30, 2005 11:16 AM
To: beginners perl
Subject: File Test Question

*My Code:*

my $logfile = "logfile_with_content";
if (-w $logfile) {
    print ("True - file exists but empty");
}
if (-s $logfile) {
    print ("True - file exist and has content");
}

*My Output:*

True - file exists but empty True - file exist and has content

*My Question:*

Why do both test evaluate to true when the file called
"logfile_with_content" is 5K in size?  I would expect the second file
test
to only work?  Any advice?

Thanks


--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
<http://learn.perl.org/> <http://learn.perl.org/first-response>


Reply via email to