find

From wikieduonline
Revision as of 10:00, 13 April 2022 by Welcome (talk | contribs)
Jump to navigation Jump to search

find[1] is a command-line utility that searches for files in one or more directory trees of a file system. Available in Linux, included in findutils packages, and in Windows.

Options

  • -xdev or -mount Don't descend/traverse directories on other filesystems.

Linux Example commands

  • Search files between a size range:
    • find . -size +10G
    • find . -size +100k -a -size -500k
  • Search empty files: find . -size 0k
  • Search non-empty files: find . ! -size 0k
  • One line listing with sizes using ls and find: ls -ldh $(find /path/to/search/)
  • One line filename and directory listing with full path: find . -name "*"
  • One line filename and NOT directory . listing with full path: find . -type f -exec ls \{\} \;
  • List files but not directories: find . -type f
  • Search for hard links: find /path/to/search -samefile /path/to/your/file[2] (See also: stat)
  • Order by size:
    • find . -type f -ls | sort -rnk7 | more or ls -lR | grep '^-' | sort -rnk5
      • find / -type f -not -path "/proc*" -ls | sort -rnk7 | more
    • find . -ls 2>&1 | sort -rnk7 | more
  • Compress files with xz using all CPUs :
    • find . -type f -not -name \*.xz -exec xz -T0 --verbose \{\} \;
  • Delete files older than 5 days
    • find /path/to/directory/ -mindepth 1 -mtime +5 -print
    • find /path/to/directory/ -mindepth 1 -mtime +5 -delete [1]

/usr/lib/php/sessionclean (shell script)

  • find "/proc/$pid/fd" -ignore_readdir_race -lname "$save_path/sess_*" -exec touch -c {} \

Activities

  1. Identify differences between find and ls

Related terms

See also


Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy.

Source: https://en.wikiversity.org/wiki/Linux/Basic_commands/find

Advertising: