twitter

How To's Tutorials

Unix / Linux find Command Tutorials with Practical Examples

Overview :

 

As the name suggests , find command is used to search files and directories in UNIX like operating system. Find command can search files & directories on the basis of their name,size ,type,permissions,access time,modify time and lot of other criteria.Some of the practical examples of find command is shown below :

 

Syntax : # find <start_at> conditions  actions

 

According to above syntax find command searches the files on the disk from a given starting location, start_at , looking for the files & directories that matches a given conditions and then taking the given actions , such as printing out the file names.

 

Example :1 How find files on the basis of their names

 

Syntax : # find  <location-where-To-Find> <options>  < File Name>

 

#  find / -iname interfaces

Find Command

 

In above command “-iname” option is used for case insensitive , means it will search all the files that matches interfaces.

 

Example:2 Find all the files & directories which have 777 permissions

 

# find / -perm 777

Find Command

 

Example:3 Find all the regular files in /root and have permissions 644

 

# find /root -type f  perm 644

Find Command

 

Similarly find the all the files which are directories

# find /root  -type d

 

Find all the files in /home folder which have the symbolic links

#  find /home  -type l

 

Find all the socket files in / folder

# find /  -type s

 

Example: 4 Find files based on their size

 

# find /home -size +1G

 

above command will find all the files  in /home which have the size more than 1GB.

 

Find all the files which have exact 1GB size.

#  find /home -size  1G

 

Find all the files which have size less than 1GB in /home folder.

#find /home -size -1G

 

Example: 5 Execute Command after find operations

 

Synatx # find <where-to-search> <options> -exec <command> {} \;

 

Find all the files which have 644 permissions and do the listing using ls -l command

# find / -perm 644 -exec ls -l {} \;

 

Find all the files have ".mp3 extensions and remove it"

# find / -name "*.mp3"  -exec rm -rf {} \;

 

Note : We ca also use ok instead exec option but in case of ok , it will  ask the user first.  If the user agrees, then command will execute ,Otherwise just return false.

 

Example:6 Search files to a specific directories level using maxdepth & mindepth

 

# find /root -maxdepth 2 -type f -perm 644

 

Above command will search all the regular files under / root folder  and one level down. (i.e /root - level 1, and one sub-directory  - level 2) which has 644 permissions.

 

Find all the regular  files where  maxdepth is 4 and mindepth is 2 and has permissions 644

# find / -maxdepth 4 -mindepth 2 -type f -perm 644

 

Example:7 Search files and directories using their inode numbers

 

# find -inum <inode-numbers>

 

Example:8 Find the files based on their modified & access time

 

Find the file under the directory /home that was modified more than 60 days ago.

# find /home -mtime +60

 

Find the files in /var/spool folder that have been accessed at least two days ago

# find /var/spool -atime +1

 

Example :9 Find all the empty files & directories in / folder

 

#find / -empty

 

Example:10 Print and xargs options in find Command

 

# find /  -type f -perm 644 -print0 | xargs -0 ls -l

 

Above command will find all the regular files which has 644 permissions and prints all the match files and gives input to xargs.

 

Athar Mustafa on, 2013-08-21 04:34:45
Hi, Fantastic tutorial. Please post a tutorial for firewal setup.
Ashutosh kumar on, 2013-08-20 08:54:58
please send storage and network command and tutorials with examples Post Your Comments
Post Your Comments
Name:
Email:
Comment:
Security Code  *
Enter Security Code  *
Can't read the image? click here to refresh