[CentOS] Why does 'test -f' and 'test -e' return true on a (hidden) file that doesn't exist?

Stephen Harris lists at spuddy.org
Mon Mar 31 21:11:05 UTC 2008


On Mon, Mar 31, 2008 at 01:37:01PM -0700, Tim Alberts wrote:
> Why does 'test -f' and 'test -e' return true on a (hidden) file that 
> doesn't exist?
> 
> *> cat /home/talberts/.forward*
> cat: /home/talberts/.forward: No such file or directory
> *> test -f /home/talberts/.forward ;echo $?*
> 1
> *> test -e /home/talberts/.forward ;echo $?*
> 1

"0" means true

% test 1 == 1 ; echo $?
0
% test 1 == 2 ; echo $?
1
% test 1 == 1 && echo good
good

(BTW, putting * around lines you type is REALLY bad quoting style)

-- 

rgds
Stephen



More information about the CentOS mailing list