为什么我的 zsh 在启动时有这些文本?
Why does my zsh have these texts on startup?
前几天我正在安装 RoR,当我打开我的 iterm2 时,它正在启动:
这是我的 .bash_profile
# Setting PATH for Python 3.7
# The original version is saved in .bash_profile.pysave
PATH="/Library/Frameworks/Python.framework/Versions/3.7/bin:${PATH}"
export WORKON_HOME=$HOME/.virtualenv
export PROJECT_HOME=$HOME/Devel
source /usr/local/bin/virtualenv
alias python='/usr/local/bin/python3'
echo 'export PATH="/usr/local/sbin:$PATH"'
alias q='exit'
echo 'export PATH="/usr/local/sbin:$PATH"'
# Add RVM to PATH for scripting. Make sure this is the last PATH variable change.
export GEM_HOME=~/.ruby
# Add RVM to PATH for scripting. Make sure this is the last PATH variable change.
export PATH="$PATH:$HOME/.rvm/bin"
export PATH=/Users/highcenoid/gems/bin:/usr/local/opt/sqlite/bin:/Library/Frameworks/Python.framework/Versions/3.6/bin:/Library/Frameworks/Python.framework/Versions/3.7/bin:/Library/Frameworks/Python.framework/Versions/3.7/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/MacGPG2/bin
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*
在我的 .zshrc
上:
export PATH=$HOME/bin:/usr/local/bin:$PATH
export ZSH="/Users/user/.oh-my-zsh"
ZSH_THEME="powerlevel9k/powerlevel9k"
DISABLE_AUTO_TITLE="true"
ENABLE_CORRECTION="true"
plugins=(git django npm node pip python yarn brew virtualenv)
POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(status virtualenv)
source $ZSH/oh-my-zsh.sh
export MANPATH="/usr/local/man:$MANPATH"
[[ -f /usr/local/lib/node_modules/serverless/node_modules/tabtab/.completions/serverless.zsh ]] && . /usr/local/lib/node_modules/serverless/node_modules/tabtab/.completions/serverless.zsh
[[ -f /usr/local/lib/node_modules/serverless/node_modules/tabtab/.completions/sls.zsh ]] && . /usr/local/lib/node_modules/serverless/node_modules/tabtab/.completions/sls.zsh
[[ -f /usr/local/lib/node_modules/serverless/node_modules/tabtab/.completions/slss.zsh ]] && . /usr/local/lib/node_modules/serverless/node_modules/tabtab/.completions/slss.zsh
export DEFAULT_USER="$(whoami)"
export PATH="/Applications/Postgres.app/Contents/Versions/latest/bin:$PATH"
export PATH="$PATH:$HOME/.rvm/bin"
这是我的虚拟环境
#!/usr/bin/python
# EASY-INSTALL-ENTRY-SCRIPT:
'virtualenv==16.4.3','console_scripts','virtualenv'
__requires__ = 'virtualenv==16.4.3'
import sys
from pkg_resources import load_entry_point
if __name__ == '__main__':
sys.exit(
load_entry_point('virtualenv==16.4.3', 'console_scripts',
'virtualenv')()
)
我还需要展示什么?
发生了什么事?
您的 .zshrc
看起来不错,但问题出在您的 .bash_profile
中。 Shell 配置文件只是在 shell 启动时执行的 shell 脚本。在 .bash_profile
这一行
source /usr/local/bin/virtualenv
virtualenv 文件的内容包含在 shell 脚本中(source
就像在其他语言中包含或导入)。并且将任何其他语言源包含到 shell 脚本中总是会导致错误。
为什么?
我不知道virtualenv应该怎么安装和启动,但这显然是错误的。我的第一个猜测是 virtualenv
应该是一个 shell 脚本,但有些东西用 python 内容覆盖了它。或者 - virtualenv
s 内容没问题,但不应通过将其采购到 .bash_profile
来启动,而是在那里执行。
好的,但我该如何解决?
如果我的第一个猜测是正确的话,没什么可做的。也许重新安装 virtualenv 相关的东西会有所帮助。
但在第二种情况下 - 将上面提到的 source 行更改为
/usr/local/bin/virtualenv
保存文件,这样就可以了。这告诉不要包含 virtualenv 而是执行它。
PS。导出路径=...
最后两行
export PATH="/usr/local/sbin:$PATH"
export PATH="/usr/local/sbin:$PATH"
出现,因为你的 .bash_profile
又这么说了。有两行:9 和 12
echo 'export PATH="/usr/local/sbin:$PATH"'
echo
就像其他语言的打印一样。所以这告诉 shell 打印一些静态字符串。如果您不喜欢这样,您可以删除这些行或将 #
放在它们前面,以将它们注释掉。
前几天我正在安装 RoR,当我打开我的 iterm2 时,它正在启动:
这是我的 .bash_profile
# Setting PATH for Python 3.7
# The original version is saved in .bash_profile.pysave
PATH="/Library/Frameworks/Python.framework/Versions/3.7/bin:${PATH}"
export WORKON_HOME=$HOME/.virtualenv
export PROJECT_HOME=$HOME/Devel
source /usr/local/bin/virtualenv
alias python='/usr/local/bin/python3'
echo 'export PATH="/usr/local/sbin:$PATH"'
alias q='exit'
echo 'export PATH="/usr/local/sbin:$PATH"'
# Add RVM to PATH for scripting. Make sure this is the last PATH variable change.
export GEM_HOME=~/.ruby
# Add RVM to PATH for scripting. Make sure this is the last PATH variable change.
export PATH="$PATH:$HOME/.rvm/bin"
export PATH=/Users/highcenoid/gems/bin:/usr/local/opt/sqlite/bin:/Library/Frameworks/Python.framework/Versions/3.6/bin:/Library/Frameworks/Python.framework/Versions/3.7/bin:/Library/Frameworks/Python.framework/Versions/3.7/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/MacGPG2/bin
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*
在我的 .zshrc
上:
export PATH=$HOME/bin:/usr/local/bin:$PATH
export ZSH="/Users/user/.oh-my-zsh"
ZSH_THEME="powerlevel9k/powerlevel9k"
DISABLE_AUTO_TITLE="true"
ENABLE_CORRECTION="true"
plugins=(git django npm node pip python yarn brew virtualenv)
POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(status virtualenv)
source $ZSH/oh-my-zsh.sh
export MANPATH="/usr/local/man:$MANPATH"
[[ -f /usr/local/lib/node_modules/serverless/node_modules/tabtab/.completions/serverless.zsh ]] && . /usr/local/lib/node_modules/serverless/node_modules/tabtab/.completions/serverless.zsh
[[ -f /usr/local/lib/node_modules/serverless/node_modules/tabtab/.completions/sls.zsh ]] && . /usr/local/lib/node_modules/serverless/node_modules/tabtab/.completions/sls.zsh
[[ -f /usr/local/lib/node_modules/serverless/node_modules/tabtab/.completions/slss.zsh ]] && . /usr/local/lib/node_modules/serverless/node_modules/tabtab/.completions/slss.zsh
export DEFAULT_USER="$(whoami)"
export PATH="/Applications/Postgres.app/Contents/Versions/latest/bin:$PATH"
export PATH="$PATH:$HOME/.rvm/bin"
这是我的虚拟环境
#!/usr/bin/python
# EASY-INSTALL-ENTRY-SCRIPT:
'virtualenv==16.4.3','console_scripts','virtualenv'
__requires__ = 'virtualenv==16.4.3'
import sys
from pkg_resources import load_entry_point
if __name__ == '__main__':
sys.exit(
load_entry_point('virtualenv==16.4.3', 'console_scripts',
'virtualenv')()
)
我还需要展示什么?
发生了什么事?
您的 .zshrc
看起来不错,但问题出在您的 .bash_profile
中。 Shell 配置文件只是在 shell 启动时执行的 shell 脚本。在 .bash_profile
source /usr/local/bin/virtualenv
virtualenv 文件的内容包含在 shell 脚本中(source
就像在其他语言中包含或导入)。并且将任何其他语言源包含到 shell 脚本中总是会导致错误。
为什么?
我不知道virtualenv应该怎么安装和启动,但这显然是错误的。我的第一个猜测是 virtualenv
应该是一个 shell 脚本,但有些东西用 python 内容覆盖了它。或者 - virtualenv
s 内容没问题,但不应通过将其采购到 .bash_profile
来启动,而是在那里执行。
好的,但我该如何解决?
如果我的第一个猜测是正确的话,没什么可做的。也许重新安装 virtualenv 相关的东西会有所帮助。
但在第二种情况下 - 将上面提到的 source 行更改为
/usr/local/bin/virtualenv
保存文件,这样就可以了。这告诉不要包含 virtualenv 而是执行它。
PS。导出路径=...
最后两行
export PATH="/usr/local/sbin:$PATH"
export PATH="/usr/local/sbin:$PATH"
出现,因为你的 .bash_profile
又这么说了。有两行:9 和 12
echo 'export PATH="/usr/local/sbin:$PATH"'
echo
就像其他语言的打印一样。所以这告诉 shell 打印一些静态字符串。如果您不喜欢这样,您可以删除这些行或将 #
放在它们前面,以将它们注释掉。