shell - 从 .zshrc 导出 PYTHONPATH 不起作用

标签 shell python-2.7 zsh zshrc

我试图从我的 .zshrc 导出 PYTHONPATH 环境变量,但失败了。

.zshrc 中的相关行

PYTHONPATH="/Users/nicolas/Code:/Users/nicolas/Code/Dashboard"
export $PYTHONPATH

** 从命令行 **

1] 测试一
echo $PYTHONPATH
/Users/nicolas/Code:/Users/nicolas/Code/Dashboard

似乎工作

2] 测试二
`sh -c 'echo "$PYTHONPATH"' `
==> empty output

实际上没有

3]测试三

运行以下 python 脚本,使用命令 python script.py
#!/usr/bin/env python
import os
try:
    user_paths = os.environ['PYTHONPATH'].split(os.pathsep)
except KeyError:
    user_paths = 'no pythonpath'
print user_paths

输出:
没有 python 路径

再次失败

4]测试四
zsh -x -c 'echo moo'

+/etc/zshenv:2> [ -x /usr/libexec/path_helper ']'
+/etc/zshenv:3> /usr/libexec/path_helper -s
+/etc/zshenv:3> eval 'PATH="/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/local/bin:/opt/X11/bin:/usr/texbin:/Users/nicolas/anaconda/bin:/opt/local/lib/postgresql93/bin:/Users/nicolas/Code/games:/Users/nicolas/Code/Dashboard";' export 'PATH;'
+(eval):1> PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/local/bin:/opt/X11/bin:/usr/texbin:/Users/nicolas/anaconda/bin:/opt/local/lib/postgresql93/bin:/Users/nicolas/Code/games:/Users/nicolas/Code/Dashboard
+(eval):1> export PATH
+zsh:1> echo moo
moo

额外信息:
which zsh

输出:/usr/local/bin/zsh

我的 $PATH 没问题,它与终端和 Python 内部完全相似。

发生了什么,我该如何解决?

使用 Mac os,从 anaconda 安装 python

最佳答案

export $PYTHONPATH是不正确的。
export采用变量名而不是值。

你要export PYTHONPATH .

您的线路相当于 export /Users/nicolas/Code:/Users/nicolas/Code/Dashboard正如您可能会说的那样,这不是很有用。

关于shell - 从 .zshrc 导出 PYTHONPATH 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28674445/

相关文章:

linux - Bash 脚本 - Crontab 完成 bash 脚本的一部分但不是全部

linux - ps优先级与最高优先级输出的差异

ruby-on-rails-4 - 在 zeus 命令终止后,在 zsh 中使用 zeus 时光标位置发生变化

bash - 如何在不 fork 子 shell 的情况下获取 shell 函数的输出?

linux - 循环遍历目录中的文件

python - 访问类实例的父模块的 __all__ 列表

python - 导入 simplegui 时遇到问题

python - Django 外键模型不保存引用

unix - 在 zsh 中取消全局别名的别名

bash - 如何安全地提前退出 bash 脚本?