在 Fish shell 中出现错误 "cd: '/Users/x/Downloads/' is a rotten symlink"

Getting an error "cd: '/Users/x/Downloads/' is a rotten symlink" in Fish shell

今天我登录到我的机器并尝试 cd ~/Downloads,但是我的 shell (Fish) 只是 returns 错误 cd: '/Users/x/Downloads/' is a rotten symlink,没有任何进一步的信息。

它似乎起源于 Fish 的 builtin_cd 函数调用 here,但是我不知道是什么原因,因为我的 Downloads 目录没有符号链接。

我可以 cd 进入任何其他目录,我可以通过 MacOS 的 UI (Finder) 访问 Downloads,所以我不认为目录数据已损坏。

有谁知道这个错误的原因是什么and/or如何解决?

编辑:我已经尝试从我的包管理器(自制软件)重新安装 Fish,但无济于事。

您的终端应用程序被禁止访问下载目录。您可以这样修复它:

  1. 打开安全和隐私首选项面板
  2. 单击“隐私”选项卡
  3. Select 侧栏中的“文件和文件夹”
  4. 找到您的终端应用程序,并确保检查下载目录

您必须重新启动终端才能访问。