Find Command
Exmples how to use find
These are common find commands
-
Find Files Using Name in Current Directory
find . -name file.txt
-
Find all the files whose name is file.txt and contains both capital and small letters in /home directory
find /home -iname file.txt
-
Find all directories whose name is file in / directory
find / -type d -name file
-
Find all php files in a directory
find . -type f -name "*.php"
-
Find all the files whose permissions are 777
find . -type f -perm 0777 -print
-
Find all the files without permission 777
find / -type f ! -perm 777
-
Find all the SGID bit files whose permissions set to 644.
find / -perm 2644
-
Find all the Sticky Bit set files whose permission are 551
find / -perm 1551
-
Find all SUID set files
find / -perm /u=s
-
Find all SGID set files
find / -perm /g=s
-
Find all Read Only files
find / -perm /u=r
-
Find all Executable files
find / -perm /a=x
-
Find all 777 permission files and use chmod command to set permissions to 644
find / -type f -perm 0777 -print -exec chmod 644 {} \;
-
Find all 777 permission directories and use chmod command to set permissions to 755
find / -type d -perm 777 -print -exec chmod 755 {} \;
-
To find a single file called file.txt and remove it
find . -type f -name "file.txt" -exec rm -f {} \;x
-
To find and remove multiple files such as .mp3 or .txt, then use
find . -type f -name "*.txt" -exec rm -f {} \;
-
To find all empty files under a certain path
find /tmp -type f -empty
-
To file all empty directories under a certain path
find /tmp -type d -empty
-
To find all hidden files, use the below command
find /tmp -type f -name ".*"
-
To find all files that belong to user User under /home directory
find /home -user user
-
To find all files that belong to the group Developer under /home directory
find /home -group developer
-
To find all .txt files of user User under /home directory
find /home -user User -iname "*.txt"
-
To find all the files which are modified 50 days back
find / -mtime 50
-
To find all the files which are accessed 50 days back
find / -atime 50
-
To find all the files which are modified more than 50 days back and less than 100 days
find / -mtime +50 –mtime -100
-
To find all 50MB files, use
find / -size 50M
-
To find all the files which are greater than 50MB and less than 100MB
find / -size +50M -size -100M
-
To find all 100MB files and delete them using one single command
find / -type f -size +100M -exec rm -f {} \;
-
Find all .mp3 files with more than 10MB and delete them using one single command
find / -type f -name *.mp3 -size +10M -exec rm {} \;
-
Find all greater than 50MB and sort
find / -size +50M -exec du -sh {} \;
-
To find all the files which are modified in the last 1 hour
find / -mmin -60