【问题标题】:Ubuntu environment variables - Anaconda JupyterUbuntu 环境变量 - Anaconda Jupyter
【发布时间】:2017-09-19 10:44:54
【问题描述】:

我可以通过两种不同的方式启动 Anaconda Jupyter notebook(下面的案例 A 和案例 B):

案例A。

1) 我在 .sh 文件中有以下代码,它是可执行的:

#!/bin/bash
cd "/home/alex/Project"
"/home/alex/anaconda3/bin/jupyter-notebook"

2) 或者.sh文件中的以下代码,可执行:

"/home/alex/anaconda3/bin/jupyter-notebook"

以上两种情况下,以下 Python(在 Jupyter 中)命令都会生成错误:

import os
print(os.environ['CLASSPATH'])

错误:

KeyError: 'CLASSPATH'

案例 B

1) 我打开终端并输入jupyter-notebookjupyter notebook

2) 我打开终端并输入/home/alex/anaconda3/bin/jupyter-notebook

在这种情况下,相同的 Python(在 Jupyter 中)命令为 CLASSPATH 返回正确的值。

有谁知道出了什么问题以及如何开始故障排除?

补充:我使用下面的命令sudo gedit ~/.bashrc设置CLASSPATH

【问题讨论】:

  • 你可能在你的 bash/zsh/sh-profile 中设置了CLASSPATH,无论是全局的还是本地的。从终端执行jupyter-notebook 时,您的环境是由您的shell 设置的,可能包括CLASSPATH。在交互式 shell 之外执行 shellscript 时,不会加载您的环境。找出CLASSPATH 的设置位置,并确保将其添加到您的脚本中。
  • 从您的主目录执行echo $CLASSPATH,然后从Jupyter shell 内部执行!echo $CLASSPATH,它们返回什么?
  • @user2722968 我在帖子中添加了一行,所以当我执行文件时,如何确保读取正确的bashrc
  • @DmitryPolonskiy。在终端中,我在 Jupyter 中得到 CLASSPATH(案例 A)我什么也没有得到,而在(案例 B)中,我得到了正确的返回路径
  • 您可以简单地将source $HOME/.bashrc 添加到您的脚本中

标签: python ubuntu environment-variables anaconda


【解决方案1】:
print (os.environ) 

将向您显示所有来自os 的值,但您可能对

感兴趣
print(os.getenv('CLASSPATH'))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-08-12
    • 2021-10-15
    • 1970-01-01
    • 1970-01-01
    • 2021-09-08
    • 1970-01-01
    • 2016-03-05
    相关资源
    最近更新 更多