是否可以从jupyter笔记本单元内部的管道设置env?

时间:2019-08-29 15:52:27

标签: python jupyter-notebook

在jupyter笔记本单元中运行此命令

!whereis cudnn.h

获取此输出

cudnn: /usr/include/cudnn.h

在jupyter笔记本单元中运行此命令

%env CUDNN_H_PATH=/usr/include/cudnn.h

设置环境变量

在jupyter笔记本单元中运行此命令

%env CUDNN_H_PATH=$(whereis cudnn.h)

得到这个

!echo $CUDNN_H_PATH
$(whereis cudnn.h)

问题

是否可以将!whereis cudnn.h的输出设置为环境变量CUDNN_H_PATH

1 个答案:

答案 0 :(得分:0)

可能的是:存储!whereis cudnn.h的结果(将成为列表),并获取第一项。然后只需将其传递给%env

path = !whereis ls # using ls instead of cudnn.h, but would work either way
path = path[0]
%env CUDNN_H_PATH=$path

!echo $CUDNN_H_PATH
ls: /bin/ls

但是,如果您只想从!whereis cudnn.h(而不是cudnn:)获取路径,则可以执行以下操作:

path = !whereis ls
path = path[0].split(' ')[1]
%env CUDNN_H_PATH=$path

!echo $CUDNN_H_PATH
/bin/ls

如果IndexError找不到您要查找的内容,则必须提防!whereis cudnn.h

相关问题