相关疑难解决方法(0)

zsh 无法在 ~/bin 中找到或执行自定义用户脚本,尽管它们是可执行的并且位于 $PATH 环境变量中

问题:

我最近从 macOS Mojave 10.14.6 升级到 macOS Catalina 10.5.5。

现在这zsh是默认的 shell,我将其迁移.bashrc.zshrc

  • 别名工作正常。
  • 但由于某些无法解释的原因,我的自定义用户脚本在~/bin/my/~/bin/dev/
    • 未通过自动完成完成
    • 完全输入时无法唤起,然后我得到zsh: command not found: myScript.sh

调查与故障排除:

  • 当将 shell 改回 bash 时,一切仍然有效,因此可以排除操作系统更新导致的数据丢失/损坏,这一定是配置问题。
  • 我的所有脚本文件都有可执行标志。
  • 它们所在的目录位于 $PATH 环境变量中。
    • 证明:echo $PATH给出/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Apple/usr/bin:/usr/local/sbin:~/bin/bin:~/bin/my:~/bin/dev:

实验:

  • 我尝试设置/附加 $PATH 变量,带或不带export。--> 没有区别。
  • 我尝试了各种可能的配置文件: .zprofile .zshrc --> 没有区别。
  • 我硬链接了 bash 和 zsh 配置文件并包含:alias test123="echo test123"
    • 此别名适用于 bash 和 zsh。所以这不可能是加载配置文件链中的问题。
  • 我尝试了不同的 shebang 语法 --> 没有区别。无论如何,使用完整路径直接调用始终有效。

macos config zsh environment-variables macos-catalina

4
推荐指数
1
解决办法
1034
查看次数

升级到 macOS Catalina 后出现“zsh:找不到命令:dotnet-svcutil”

按照建议将 macOS 升级到 10.15 (Catalina) 并从 bash 切换到 zsh后,我尝试svcutil从终端启动(或任何其他 .NET Core 工具),但收到以下错误消息:

zsh:找不到命令:dotnet-svcutil

奇怪的是,因为~/.dotnet/tools在使用 .NET 检查路径时提到了它的位置(默认安装 .NET Core 工具的位置)echo $PATH。我该如何解决这个问题?

zsh .net-core macos-catalina

2
推荐指数
1
解决办法
4092
查看次数