我使用Homebrew Cask在OS x上安装应用程序,如何升级所有已安装的Cask ?
当前回答
homebrew-cask-upgrade
我认为这是目前为止升级酒桶的最佳方案。 来源:https://github.com/buo/homebrew-cask-upgrade
安装使用
brew tap buo/cask-upgrade
brew update
brew cu
(可选)强制升级过时的应用程序,包括标记为最新的应用程序:
brew cu --all
其他回答
现在终于有了一个官方的Homebrew Cask升级机制(参见第3396期的实现)!要使用它,只需运行以下命令:
酿造升级——酒桶
但是,这将不会更新没有版本信息的桶(version:latest)或具有内置升级机制的应用程序(auto_updates true)。要重新安装这些桶(并在升级可用时升级它们),运行带有——greedy标志的upgrade命令,如下所示:
酿造升级—酒桶—贪婪
变得过时:
酿造过时——酒桶——贪婪——冗长
这真的让我很恼火,所以我创建了这个脚本来更新所有的Brew应用程序,并允许用户选择更新哪个Cask应用程序。你也可以将应用程序排除在外。
https://github.com/derrekyoung/ScriptsAndUtils/blob/master/brew-cask-upgrade.sh
brew list --cask | xargs brew upgrade
这循环通过所有应用程序安装的酿造桶和升级他们一个在时间。
brew upgrade --cask
对我已经没用了。
for cask in $(brew list --cask); do brew upgrade --cask $cask; done;
一个简单的FOR循环迭代所有的桶,而不是手动升级一个接一个。
买过时的酒桶:
酿酒桶过时了
升级桶:
酿造桶重新安装过时的桶
演示脚本:
$ cat ~/bin/brew_cask_upgrade.sh
#!/bin/bash
red=$(tput setaf 1)
# green=$(tput setaf 2)
reset=$(tput sgr0)
(set -x; brew update;)
for cask in $(brew cask outdated | awk '{print $1}')
do
echo "${red}update ${cask} ...${reset}."
(set -x; brew cask install --force "$cask";)
done
echo "${red}brew clean up ...${reset}"
(set -x; brew cask cleanup;)
echo "${red}brew clean up done.${reset}"
推荐文章
- 为什么cURL返回错误“(23)Failed writing body”?
- 节点和错误:EMFILE,打开的文件太多
- 如何使用命令行工具为Mac OS X创建一个漂亮的DMG ?
- 由于环境错误无法安装包:[Errno 13]
- Mac压缩没有__MACOSX文件夹?
- 如何复制一个选择到OS X剪贴板
- 我如何知道哪些自制配方是可升级的?
- 如何在Mac上设置我的默认shell,例如Fish?
- "ERROR:root:code for hash md5 was not found"当使用任何hg mercurial命令时
- Linux相当于Mac OS X的“open”命令
- 如何在Mac上的命令行安装JQ ?
- 在Mac OS X上安装/升级gradle
- 如何在终端中提高光标速度?
- Objective-C中的自动引用计数不能防止或减少什么样的泄漏?
- 如何在Mac OS安装时停止MySQL ?