Last active
November 22, 2019 18:28
-
-
Save richy486/1a8f184ca0c3f8c47ea06023865d19ef to your computer and use it in GitHub Desktop.
Xcode clean up
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# Clean Xcode files | |
# @richy486 https://gist.github.com/richy486 | |
# http://ajithrnayak.com/post/95441624221/xcode-users-can-free-up-space-on-your-mac | |
STATUS='\033[0;36m' | |
WARNING='\033[0;33m' | |
ERROR='\033[0;31m' | |
CMD='\033[0;92m' | |
NC='\033[0m' # No Color | |
OLDER_THAN=365 | |
echo -e "\n${STATUS}Deleting derived data${NC}" | |
rm -rf ~/Library/Developer/Xcode/DerivedData | |
echo -e "\n${STATUS}Deleting old caches directory${NC}" | |
rm -rf ~/Library/Caches/com.apple.dt.Xcode | |
echo -e "\n${STATUS}Deleting unavailable simulators${NC}" | |
xcrun simctl delete unavailable | |
echo -e "\n${STATUS}Deleting archives older than ${OLDER_THAN} days${NC}" | |
# Using find | |
find ~/Library/Developer/Xcode/Archives * -mtime +${OLDER_THAN} -exec rm -rf "{}" \; | |
# Using date of folder as macOS/Xcode changes the modified date | |
# https://unix.stackexchange.com/a/516358/383242 | |
discriminant=$(date -v -1y "+%Y-%m-%d") | |
pushd ~/Library/Developer/Xcode/Archives; | |
list=() | |
shopt -s nullglob | |
for file in *; do | |
if [[ $file < $discriminant ]]; then | |
rm -rf $file | |
fi | |
done | |
popd; | |
echo -e "\n${STATUS}Deleting device support files older than ${OLDER_THAN} days${NC}" | |
find ~/Library/Developer/Xcode/iOS\ DeviceSupport * -mtime +${OLDER_THAN} -exec rm -rf "{}" \; | |
echo -e "\n${STATUS}Deleting simulator files older than ${OLDER_THAN} days${NC}" | |
find ~/Library/Developer/CoreSimulator * -mtime +${OLDER_THAN} -exec rm -rf "{}" \; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment