Deletes ~/project/ rust target data older than 2 week days
| #!/usr/bin/env bash | |
| ## Deletes ~/project/ rust target data older than 2 week days | |
| set -eu | |
| shopt -s globstar nullglob | |
| # 2 week days or older | |
| find_atime="+1" | |
| case $(date --date='+6 hours' +%u) in | |
| 1) find_atime="+4" ;; | |
| 6) find_atime="+2" ;; | |
| 7) find_atime="+3" ;; | |
| esac | |
| match_count=$(/usr/bin/find ~/project/**/{target,target/rls}/{debug,release} -type f -ctime $find_atime -atime $find_atime | wc -l) | |
| if [[ $match_count -gt 0 ]]; then | |
| echo "Removing $match_count file(s): find ~/project/**/{target,target/rls}/{debug,release} -ctime $find_atime -atime $find_atime" | |
| du_before=$(du -hd0 /home/alex/project/ | cut -f1) | |
| /usr/bin/find ~/project/**/{target,target/rls}/{debug,release} \ | |
| -type f -ctime $find_atime -atime $find_atime -delete | |
| # shellcheck disable=SC2088 | |
| echo "~/project: $du_before -> $(du -hd0 /home/alex/project/ | cut -f1)" | |
| fi |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This comment has been minimized.
alexheretic commentedDec 4, 2018
•
edited
stdout will be something like: