Monday 15 August 2011

TCSH / CSH / C Shell Check Whether a Directory is Empty or Not


How do I check whether a directory is empty or not under Linux / UNIX using a TCSH / C shell script?

You can use the following simple code to check if a directory is empty or not using csh:
 
#!/bin/csh
set dir="$1"
set c=0
# make sure $dir exits
if ( -d ${dir} ) then
    set c=`ls -a ${dir} | wc | awk '{print $1}'`
   # IS dir is empty
    if ( "${c}" == 2 ) then
		echo "Empty directory - "${dir}
    else 	#dir has files
		echo "Dir has files - "${dir}
    endif
else
      echo "Error: Not a directory"
endif
 
You can use the find command (see your local find man page for exact syntax) as follows:
 
find "/path/to/dir" -type f -exec echo Found file {} \;
 
OR
 
find -type d -empty

No comments:

Post a Comment

Do not post irrelevant comments, please!

Browser Name:
Browser Version:
Browser Code Name:
User-Agent: