-
search for files and directories (recursively) based on various criterias
-
find [path] [expression]-
[path]: The directory where the search will be started
-
[expression]: Filter criteria
-
when using
-name -inameas criteria * is supported for wildcard
-
-
find /home/user -name "example.txt"find a file with following name in /home/user directory -
find /home/user -iname "example.txt": case insensitive searchiname -
find /path -type f: find only files not directories -
find /path -type d: find only directories -
find /path -type l: find symbolic links -
find / -size +100M: find files greater than 100MB -
find / -size -5k: find files smaller than 5KB -
find /home -type f -perm 644: find files with permission mode -
find /home -type f -mtime -7: find files modified in last 7 days -
find /home -type f -atime -2: find files accessed in last 2 days -
find /path -type f -name "*.log" -exec rm {} +-
-exec: executes the given command -
{}: placeholder for the attributes -
+: end of the command
-
-
find /path -type f -empty: find empty files (use d for directories) -
find /home -type f -name "*.log" -exec grep -i "error" {} +: searching inside files (find all the log files which contain "error") -
find /var/log -type f -name "*.log" | xargs rm: xargs takes a list and passes each element as arguments to another command