Skip to content

Instantly share code, notes, and snippets.

@pascalandy
Last active August 25, 2019 15:56
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save pascalandy/6a50cded3cd765d65c808337b9262e4c to your computer and use it in GitHub Desktop.
Save pascalandy/6a50cded3cd765d65c808337b9262e4c to your computer and use it in GitHub Desktop.
Script upgrading outdated brew casks
#!/usr/bin/env bash
brew update && brew upgrade && brew update && brew upgrade &&
(set -x; brew update;)
(set -x; brew cleanup;)
(set -x; brew cask cleanup;)
red=`tput setaf 1`
green=`tput setaf 2`
reset=`tput sgr0`
casks=( $(brew cask list) )
for cask in ${casks[@]}
do
version=$(brew cask info $cask | sed -n "s/$cask:\ \(.*\)/\1/p")
installed=$(find "/usr/local/Caskroom/$cask" -type d -maxdepth 1 -maxdepth 1 -name "$version")
if [[ -z $installed ]]; then
echo "${red}${cask}${reset} requires ${red}update${reset}."
(set -x; brew cask uninstall $cask --force;)
(set -x; brew cask install $cask --force;)
else
echo "${red}${cask}${reset} is ${green}up-to-date${reset}."
fi
done
@pascalandy
Copy link
Author

pascalandy commented Aug 25, 2019

To upgrade most packages on my mac

curl -s https://gist.githubusercontent.com/pascalandy/6a50cded3cd765d65c808337b9262e4c/raw/407261f9250a6f0dc808dea46a38057ed6cf66dc/cask_upgrade.sh | bash /dev/stdin

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment