1.1 KiB
1.1 KiB
Fun with Find
Find the total size of certain files within a directory branch
find <path> -type f -iname '*-bin*' -exec du -ch {} +
Find files larger than...
100M:
find . -type f -size +100000k -exec ls -lh {} \; | awk '{ print $9 ": " $5 }'
1G:
find . -type f -size +1000000k -exec ls -lh {} \; | awk '{ print $9 ": " $5 }'
...and so on...
Find, archive and purge old files
# 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.
Tags: howto