Files
MarkdownNotes/blog - fun with find.md
chawley 65c434952a Catagorized Notes
Renamed notes to fit categories and be easier to find later: blog, config, howto
2023-04-28 10:31:11 -04:00

47 lines
1.1 KiB
Markdown

# Fun with Find
## Find the total size of certain files within a directory branch
```bash
find <path> -type f -iname '*-bin*' -exec du -ch {} +
```
---
## Find files larger than...
### 100M:
```bash
find . -type f -size +100000k -exec ls -lh {} \; | awk '{ print $9 ": " $5 }'
```
### 1G:
```bash
find . -type f -size +1000000k -exec ls -lh {} \; | awk '{ print $9 ": " $5 }'
```
...and so on...
---
## Find, archive and purge old files
```bash
# Find disk space used by logfiles older that 360 days
find /var/log/hbase -type f -iname "*log*" -mtime +360 -exec du -ch {} +
# Archive those files to another location
find /var/log/hbase -type f -iname "*log*" -mtime +360 -print0 | xargs -0 tar cfz /tmp/hbase-logs.tgz
# Delete the original files
find /var/log/hbase -type f -iname "*log*" -mtime +360 -delete
```
Replace `hbase` with the log directory you want to search. If you don't need to save the archives anywhere, skip step two.
[Reference](https://www.cyberciti.biz/faq/linux-unix-find-tar-files-into-tarball-command/)