Useful Find Tips and Tricks
Find Directories:
find / -name -type d find / -iname -type d (Ignore Case)
Find Empty Directories:
find / -type d -empty
Find and count the result :
find / -type d -empty | wc -l
Find and delete :
find / -type d -empty -exec rmdir {} ;
Find and count Not matching criteria (non empty in this case):
find . -type f -not -empty | wc -l
Find with multiple criteria :
find . ( -name ‘.txt’ -o -name ‘.jpg’ )
Find based on size : ( larger than 10M)
find /home -type f -size +10485760c
( if the sign before the numbers is – it means less than, without c it will think that the size is in blocks, we can also use k for kilobytes )
Find and operate on the result :
We can execute a bash shell script on the find result . where $1 contains the filename
name=${1##*/}
find /home -type f -size +10485760c -exec script_name
Find files by permission :
find / -perm -4000
** Find Excluding Certain Directories :**
find / ( -name EXCLUDE_DIR1 -o -name EXCLUDE_DIR2 ) -prune -o ( -type f -print \ )