防止brew清理删除特定旧版本的软件

时间:2018-05-18 12:27:43

标签: version-control terminal ansible homebrew

我是Homebrew的忠实粉丝,并且已经开始使用它来管理我的所有应用程序。一个非常有用的功能是dec,它可以在不同版本的Ansible之间切换。我需要编译一些运行较旧软件的网站。

但是,我注意到每当我想运行brew switch时,它会删除所有旧版本甚至是Ansible的2.3.2.0版本,我仍然需要与最新版本一起使用。

在筛选了大量论坛和网站之后,我一直无法找到一个解决方案,它允许我保留这个旧版本的Ansible,并且在使用brew cleanup命令时除了手动删除所有内容之外最新。

有没有人有解决方法或解决方案,我认为brew cleanup可能是可能的,但这似乎只适用于当前链接的版本。

1 个答案:

答案 0 :(得分:1)

我没有看到使用brew cleanup执行此操作的干净内置方式,但是一种解决方法:由于brew cleanup可选地需要清除公式列表,我们可以制作这样的列表它包含除Ansible之外的所有内容。

这就是我可以获得该列表的方式:

brew list | grep -v ansible

这就是我可以调用cleanup来忽略Ansible:

brew cleanup $(brew list | grep -v ansible)

也许我希望将其作为某个地方的别名,例如bca用于“ b 重新 c 精益(但不是) a nsible“:

alias bca='brew cleanup $(brew list | grep -v ansible)'

并将该行添加到我的~/.bashrc