我正在使用Mac。我有一个自定义的终端机zsh
,还好一阵子。但是当我重新启动计算机后,它的行为开始有所不同:
rake
或rails
之类的命令。 我已经使用rails创建了应用程序,但是现在使用rails -v
这样的rails命令可以使我做到这一点:
Rails is not currently installed on this system. To get the latest version, simply type:
用于显示波浪号~
(而不是我的用户名)的终端也已停止。现在,它将显示完整的用户名:
Gustaves-MacBook-Air% $ sudo gem install rails
我什至不知道为什么它不起作用,为什么重启计算机会破坏它,即使我以前做过。
我什至无法重新下载rails:
$ sudo gem install rails
zsh: command not found: $
因为我很早以前就已经在在线设置后自定义了我的终端机。
答案 0 :(得分:2)
这是我在其他人的帮助下解决此问题的方法:
首先,我使用
删除了损坏的文件。rm -rf ~/.oh-my-zsh
rm ~/.zshrc
然后我运行以下命令以重新下载zsh
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
最后,我使用文本编辑器打开了隐藏的.zshrc文件,以添加我需要的插件
plugins=(
git
bundler
dotenv
osx
rake
rbenv
ruby
)
重启终端后,一切又恢复正常
答案 1 :(得分:1)
尝试重置zsh:
exec /bin/zsh
或
exec /usr/bin/zsh
答案 2 :(得分:1)
我相信您所在目录的Ruby环境没有正确加载(因此缺少Rails)。似乎您的ZSH环境未正确加载(提示~
也可能是提示)。为什么不能确定,但我会在此期间添加一些您可以帮助的事情。
我通过使用以下命令将所有gems安装到项目目录中来对项目进行沙箱处理:
bundle install --binstubs --path=vendor.noindex
这会将rails
之类的东西放到bin
中,并将宝石放到vendor.noindex
下。 “ noindex”部分阻止Spotlight对该目录建立索引,这对我来说真的很烦!
命令是:
chsh -s $(which zsh)
查看运行echo $0
当前的默认值。
如果您的提示符显示不正确,则说明文件的格式不正确或无法正确加载。查看Oh My Zshell的说明。
您的PATH
看起来像是冒号了,因为它以冒号开头。检查您添加的所有zsh插件是否正常工作(也许一开始就将其全部删除,然后一一添加回去)。
我还使用〜/ .zshenv和helper to get paths set up correctly,也许会对您有所帮助。我将此添加到我的〜/ .zshenv中。
if [ -x /usr/local/libexec/path_helper.rb ]; then
PATH=$(/usr/local/libexec/path_helper.rb -p "")
DYLD_FALLBACK_FRAMEWORK_PATH=$(/usr/local/libexec/path_helper.rb --dyld "")
C_INCLUDE_PATH=$(/usr/local/libexec/path_helper.rb -c "")
MANPATH=$(/usr/local/libexec/path_helper.rb -m "")
fi
export PATH
export DYLD_FALLBACK_FRAMEWORK_PATH
export C_INCLUDE_PATH
export MANPATH
希望有帮助。