python - 如何在 fish 中设置 PYTHONPATH?

标签 python ubuntu fish

以下在 bash 中有效:

~$ echo $PYTHONPATH
<nothing>
~$ export PYTHONPATH=/path/to/test/folder
~$ echo $PYTHONPATH
/path/to/test/folder
~$ python -m test_script
hello world

但不是 fish :

Welcome to fish, the friendly interactive shell
Type help for instructions on how to use fish
~> echo $PYTHONPATH
<nothing>
~> set --universal PYTHONPATH /path/to/test/folder
~> echo $PYTHONPATH
/path/to/test/folder
~> python -m test_script
/usr/bin/python: No module named test_script

我试过 setset --globalset --universal

如何在 fish 中设置 PYTHONPATH? (如果重要的话,我正在运行 Ubuntu 14.04。)

最佳答案

设置变量是不够的,您还必须导出它(就像在 bash 中所做的那样)。导出意味着子进程(如 Python 调用)也将获得该值。

来自fish documentation :

-x or --export causes the specified environment variable to be exported to child processes

因此,与 bash 指令直接等效的是:

~> set --export PYTHONPATH /path/to/test/folder

您可以添加 --universal 或其他参数,但这里的值是临时的,与原始 bash 示例匹配。

(通过 a similar question 找到答案。)

关于python - 如何在 fish 中设置 PYTHONPATH?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24308310/

相关文章:

node.js - 需要建议 : Latest version of Node. js 与使用 Synaptic 包管理器?

python - 字节命令功能不适用于 PySerial

linux - 如何在 Ubuntu 10.1 下识别多个 USB 串口适配器

python - 为什么小写 'p' 大于大写 'P' ?

file - 在 Matlab 中检查文件是否打开

intellij-idea - IntelliJ 的嵌入式终端无法正确加载我的 fish shell 配置

macos - 如何在 Mac 上设置默认 shell,例如 fish ?

fish shell : Prompt changing to '>'

python - 如何在 python 中减去日期时间/时间戳

python - Tkinter 干扰 OSX 上的 pygame(中止陷阱 6)