我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

苏南大叔讲述一个brew switch命令,可以用于切换某个软件的版本(号)。这个需求是比较罕见的,而且在实践使用过程中,也不是那么好用,前提条件也比较多。但是,不乏是个备选方案。

苏南大叔:brew如何利用switch命令切换本地软件版本? - brew-switch
brew如何利用switch命令切换本地软件版本?(图3-1)

本文的测试过程是:使用brew switch命令,切换mac里面的openssl版本。测试环境:mac,openssl@1.1.1d,brew

update 221124:
最新版本的brew中,已经brew switch command not found了。目前已经不存在brew switch命令了,请使用brew extract代替。

查看可切换的软件及版本

基本命令是:

brew switch <name> <version>

目录/usr/local/Cellar/下就是可以用于切换的软件名称,也就是上述命令中的<name>,而进入<name>文件夹之后,再次出现的数字目录名,就是可选的版本号部分。

苏南大叔:brew如何利用switch命令切换本地软件版本? - cellar_folder
brew如何利用switch命令切换本地软件版本?(图3-2)

出现在这个/usr/local/Cellar/目录下的话,按理说都应该是在不同时期,通过brew install <name>来安装的各种组件。比如openssl,系统默认自带的应该是1.0.0r系列,而目前最新的是1.1.1d系列。两者可能同时共存于目录/usr/local/Cellar/openssl/中。

目前来看的话,openssl的早期版本,目前没有什么好的brew渠道可以进行安装。

查看可用版本

本地安装了<name>的那些版本呢?可以手动去/usr/local/Cellar/<name>/下去看,也可以主动去触发brew switch的错误提示,就可以显示有那些可用版本了。

苏南大叔:brew如何利用switch命令切换本地软件版本? - brew-switch-command
brew如何利用switch命令切换本地软件版本?(图3-3)

这里需要注意的是:对于brew switch来说,phpphp@5.6是两个目录,两个软件。这个和大家的常规认识是不一样的。

具体实例

下面的是两个具体的命令执行结果例子,仅供参考:

brew switch openssl 1.0.2r
Error: openssl does not have a version "1.0.2r" in the Cellar.
openssl's installed versions: 1.1.1d
brew install openssl
Updating Homebrew...
Warning: openssl@1.1 1.1.1d is already installed and up-to-date
To reinstall 1.1.1d, run `brew reinstall openssl@1.1`

相关文章

总结

brewmac系统下,是非常好用的。建议大家多多掌握它的使用方法。更多苏南大叔的brew文章,请点击:

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   brew    openssl