Shell Script - (file and directory)

The question is here:
http://farm9.staticflickr.com/8065/8217767191\_2154e64904_b.jpg

My problem is that when I made up a non-existing directory, it prints out "hiii". It didn't enter the first if statement. It works if my directory exist.

My Work:

for fileOrDirectory in $*     # all command line arguments the user enter.
do

##############
if test -d $fileOrDirectory    #check if argument is a directory.
then

    if test ! -e  $fileOrDirectory    #check if the directory does exist, exit!
    then
        echo Directory "$fileOrDirectory" does not exist.
        exit 1  #exit failure.
    else                     # make directory executable and readable  .
        chmod a+rx $fileOrDirectory
        echo Directory $fileOrDirectory is now made public.
    fi
fi
    
###########

if test -f $fileOrDirectory    #check if argument is a file.
then
    if test ! -e  $fileOrDirectory    #check if the file does exist, exit!
    then
        echo File "$fileOrDirectory" does not exist.
        exit 1    #exit failure.
    else                     # make file readable. 
        chmod a+r $fileOrDirectory
        echo File $fileOrDirectory is now made public.
    fi
fi
    echo hiii
done

York University

Do not post classroom or homework problems in the main forums. Homework and coursework questions can only be posted in this forum under special homework rules.

Please review the rules, which you agreed to when you registered, if you have not already done so.

More-than-likely, posting homework in the main forums has resulting in a forum infraction. If you did not post homework, please explain the company you work for and the nature of the problem you are working on.

If you did post homework in the main forums, please review the guidelines for posting homework and repost.

Thank You.

The UNIX and Linux Forums.