No matter how many times i run this rm -rf /siebel/sfs/tmp/dump it succeeds when i expect it only the first time to succeed becoz i expect the second to fail as the directory should be gone in the first run.
i had earlier mentioned the rm -rf /siebel/sfs/tmp/dump which I later commented out however with no rm -rf /siebel/sfs/tmp/dump in my scripts so why do i still get
I had earlier noticed this error during my script runtime
rm -rf /here/nothing will not complain or give you any indication whether nothing exist or not. rm , alone, as you see, it will, and of course, it will complain if a directory contains another node that needs to be removed first. The behavior you're describing is as documented.
The grep can be removed, unless you are looking for only the particular path string within the output of lsof for whole system.
lsof /siebel/sfs/tmp/dump will show pertaining information for dump
Perhaps I'm missing something here but you don't say under what account you are running this. Only 'root' will circumvent security so any other account may not have the rights to remove all files within that directory meaning that the directory is never emptied. Also, consider other hidden files (eg, .profile) to which you might not have access.
When it says "directory not empty" it generally means just that.
---------- Post updated at 07:58 PM ---------- Previous update was at 07:35 PM ----------
Also, your script cannot be sat in a directory it is trying to remove. Check that.
will create all the directories in this tree (if they don't already exist) with access rights being the difference between 777 and your file creation mask. What is the mask set to?
I guess it's possible that once you create these you don't have the rights to remove them. Post the access rights these are set to. The "directory not empty" message could be generated from a parent directory complaining that the sub-directory is still there.