【发布时间】:2017-07-10 18:24:22
【问题描述】:
我有 brew doctor 抱怨说我有一个 python 版本正在使用/local/bin,这可能会导致问题。所以它建议摆脱它。我做到了。现在我的脚本不能在终端上运行,因为它正在寻找它,现在抱怨-bash: /usr/local/bin/pythonw: No such file or directory
。聪明的我去了系统库并将丢失的别名复制到 /usr/local/bin/ 中。然后我在启动脚本时得到了pythonw: posix_spawn: /usr/local/bin/pythonw2.7: Exec format error。
我已尝试更改 bash_profile,它包含:
PATH=$PATH:/usr/local/rabbitmq_server-3.6.6/sbin
##
# Your previous /Users/macbook/.bash_profile file was backed up as /Users/macbook/.bash_profile.macports-saved_2017-02-20_at_14:02:39
##
# MacPorts Installer addition on 2017-02-20_at_14:02:39: adding an appropriate PATH variable for use with MacPorts.
export PATH="/opt/local/bin:/opt/local/sbin:$PATH"
# Finished adapting your PATH environment variable for use with MacPorts.
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*
source ~/ .profile
export PATH="/usr/local/sbin:$PATH"
export PATH="/usr/local/bin:$PATH"
因为我被引导安装 rvm、MacPorts 和 RabbitMQ。
当我运行file /usr/local/bin/python 时,我得到:
/usr/local/bin/python: Mach-O universal binary with 2 architectures
/usr/local/bin/python (for architecture i386): Mach-O executable i386
/usr/local/bin/python (for architecture x86_64): Mach-O 64-bit executable x86_64
这是否意味着,我需要一个符号链接?
编辑:我使用时间机器魔法来设置/usr/local/bin 中的python 文件。现在从桌面运行我的脚本会抛出我:
-bash: /usr/local/bin/env python: No such file or directory
在时间机器之后,我注意到别名现在“变白了”,当我双击它们时,我被告知“找不到原始文件” - 现在我真的很困惑......这就是设置,这在以前有效。
所以在我深入挖掘自己之前,有人可以指导我摆脱这个吗?我如何回到“正确的设置”?请不要期望对我有太多的了解。非常感谢!
【问题讨论】:
-
虽然许多用户对
brew感到满意,但众所周知,它以提供糟糕的建议而臭名昭著。一开始它建议删除整个/usr/local之前的 brew 安装。许多用户丢失了他们的mysql数据。看起来,doctor是相似的。你根据错误的建议搞砸了一个工作系统。 -
看来你是对的!但是如何解决这个问题?
-
好吧,如果您自己的知识和我一样,我担心完整的系统还原很可能是您的最佳选择。我不确定你是如何摆脱 python,但它显然也删除了你的 pythonw,这是一个不同的可执行文件。另外,你提到了一些关于使用 MacPorts 的事情。我在很多论坛上读到,总是不建议同时使用 Macports 和 Homebrew。关于python;如果我是正确的,macOS 安装了一个 python 版本,它是 python2.7 的构建。如果您想安装另一个版本,请始终使用 python.org 软件包 或 Homebrew 或 MacPorts。
-
好吧,我还有 usr/bin/library 中的所有文件,所以没有办法重新链接别名吗?有人吗?