tldr/pages/common/find.md

37 lines
1.1 KiB
Markdown
Raw Normal View History

2013-12-11 10:23:59 +00:00
# find
> Find files or directories under a directory tree, recursively.
2021-04-17 16:15:37 +01:00
> More information: <https://manned.org/find>.
2013-12-11 10:23:59 +00:00
- Find files by extension:
2013-12-11 10:23:59 +00:00
`find {{root_path}} -name '{{*.ext}}'`
2013-12-11 10:23:59 +00:00
- Find files matching multiple path/name patterns:
`find {{root_path}} -path '{{**/path/**/*.ext}}' -or -name '{{*pattern*}}'`
- Find directories matching a given name, in case-insensitive mode:
2018-08-26 05:49:15 +01:00
`find {{root_path}} -type d -iname '{{*lib*}}'`
2018-08-26 05:49:15 +01:00
- Find files matching a given pattern, excluding specific paths:
2015-12-28 09:43:58 +00:00
`find {{root_path}} -name '{{*.py}}' -not -path '{{*/site-packages/*}}'`
- Find files matching a given size range, limiting the recursive depth to "1":
2022-10-07 15:00:29 +01:00
`find {{root_path}} -maxdepth 1 -size {{+500k}} -size {{-10M}}`
2015-12-27 05:52:17 +00:00
- Run a command for each file (use `{}` within the command to access the filename):
2015-12-27 05:52:17 +00:00
`find {{root_path}} -name '{{*.ext}}' -exec {{wc -l}} {} \;`
- Find all files modified today and pass the results to a single command as arguments:
`find {{root_path}} -daystart -mtime {{-1}} -exec {{tar -cvf archive.tar}} {} \+`
- Find empty (0 byte) files and delete them:
`find {{root_path}} -type {{f}} -empty -delete`