Python Ubuntu环境变量-Anaconda Jupyter

Python Ubuntu环境变量-Anaconda Jupyter,python,ubuntu,environment-variables,anaconda,Python,Ubuntu,Environment Variables,Anaconda,我可以用两种不同的方式启动Anaconda Jupyter笔记本(下面的案例A和案例B): 案例A 1) 我在.sh文件中有以下代码,该文件是可执行的: #!/bin/bash cd "/home/alex/Project" "/home/alex/anaconda3/bin/jupyter-notebook" "/home/alex/anaconda3/bin/jupyter-notebook" 2) 或.sh文件中的以下代码,该文件是可执行的: #!/bin/bash cd "/home

我可以用两种不同的方式启动Anaconda Jupyter笔记本(下面的案例A和案例B):

案例A

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

#!/bin/bash
cd "/home/alex/Project"
"/home/alex/anaconda3/bin/jupyter-notebook"
"/home/alex/anaconda3/bin/jupyter-notebook"
2) 或.sh文件中的以下代码,该文件是可执行的:

#!/bin/bash
cd "/home/alex/Project"
"/home/alex/anaconda3/bin/jupyter-notebook"
"/home/alex/anaconda3/bin/jupyter-notebook"
在上述两种情况下,以下Python(在Jupyter中)命令都会生成错误:

import os
print(os.environ['CLASSPATH'])
错误:

KeyError: 'CLASSPATH'
案例B

1) 我打开终端并键入
jupyter笔记本
jupyter笔记本

2) 我打开终端并键入
/home/alex/anaconda3/bin/jupyter笔记本

在本例中,相同的Python(在Jupyter中)命令为
CLASSPATH
返回正确的值

有人知道是什么问题吗?我如何开始排除故障

添加:我使用以下命令设置
CLASSPATH

print (os.environ) 
将向您显示操作系统中的所有值,但您可能对

print(os.getenv('CLASSPATH'))

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