【问题标题】:How do I know where homebrew installs symlinks?我怎么知道自制软件在哪里安装符号链接?
【发布时间】:2015-06-05 20:14:26
【问题描述】:

自制软件在哪里创建符号链接?我知道它似乎是$(brew --prefix)/bin,但这是在哪里记录的?东西可以链接到其他地方吗?

当我运行brew install node 时,我在/usr/local/bin/node 的路径上以node 结束:

$ which node
/usr/local/bin/node

brew unlinkbrew link 将删除它们并为我重新添加它们。根据man brewbrew link 将符号链接“所有公式的已安装文件到 Homebrew 前缀中”。然而:

$ brew --prefix
/usr/local

似乎正确的说法是“进入 Homebrew 前缀 + bin”。公式有时可以链接到$(brew --prefix)/bin 以外的地方吗? +bin 想法是否依赖于公式?它实际上应该说“进入 Homebrew 前缀加上特定于公式的后缀(通常是 bin)”吗?我查看了一些公式,但似乎不是,尽管我可能会错过它。

我正在尝试更全面地了解 Homebrew,这一直让我感到困惑。我没有任何问题,我只是想弄清楚文档是否不完整,是否有我遗漏的命令等等。

【问题讨论】:

    标签: macos homebrew


    【解决方案1】:

    是的,符号链接可以放在其他地方。例如,公式可能会将符号链接放在$(brew --prefix)/lib。您可以通过运行brew ls $formula 列出公式的所有文件(尽管并非所有文件都必须符号链接到brew --prefix 的子目录中,但大多数都是)。

    【讨论】:

    • brew ls $formula 看起来很有前途!有没有办法查看链接本身将在(或已经)创建的位置?例如,brew ls node 似乎向我显示了所有已链接的文件(手册页、npm 的 bash 完成、节点二进制文件等)。我想看看他们将在哪里或已经链接到哪里。这可能吗?
    • @user1978019:您可以使用--dry-run 标志运行brew link
    • 嗯,对,适用于“将链接”的情况。对于已经链接的包,它会失败,但我想brew unlink node && brew link --dry-run node 会完成工作。这仍然有点令人困惑,因为它显示了链接和文件,但我必须自己将它们配对,以确定哪个链接将转到哪个文件。不像我喜欢的-> 语法那么友好,但仍然可行。同样奇怪的是,brew link node 说它创建了 6 个符号链接,brew link --dry-run node 显示了 6 个符号链接,但 brew unlink 说它删除了 7 个符号链接......嗯。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-01-17
    • 1970-01-01
    • 1970-01-01
    • 2011-09-12
    • 1970-01-01
    • 2014-02-20
    • 1970-01-01
    相关资源
    最近更新 更多