tldr/pages/common/find.md

40 lines
1.1 KiB
Markdown

# find
> Find files or directories under the given directory tree, recursively.
- Find files by extension:
`find {{root_path}} -name '{{*.ext}}'`
- Find files by matching multiple patterns:
`find {{root_path}} -name '{{*pattern_1*}}' -or -name '{{*pattern_2*}}'`
- Find directories matching a given name:
`find {{root_path}} -type d -name {{*lib*}}`
- Find files matching path pattern:
`find {{root_path}} -path '{{**/lib/**/*.ext}}'`
- Run a command for each file, use {} within the command to access the filename:
`find {{root_path}} -name '{{*.ext}}' -exec {{wc -l {} }}\;`
- Find files modified in the last 24-hour period:
`find {{root_path}} -mtime {{-1}}`
- Find files using case insensitive name matching, of a certain size:
`find {{root_path}} -size {{+500k}} -size {{-10M}} -iname '{{*.TaR.gZ}}'`
- Delete files by name, older than 180 days:
`find {{root_path}} -name '{{*.ext}}' -mtime {{+180}} -delete`
- Find files matching a given pattern, while excluding specific paths:
`find {{root_path}} -name '{{*.py}}' -not -path '{{*/site-packages/*}}'`