如何列出JupyterLab中所有现有的工作区?

时间:2018-10-05 00:24:40

标签: jupyter-notebook jupyter jupyter-lab

如何列出JupyterLab中所有现有的工作区?

我知道可以在URL中查看当前的工作空间名称:

enter image description here

enter image description here

4 个答案:

答案 0 :(得分:4)

创建工作区时,这将在~/.jupyter/lab/workspaces中创建一个文件。工作空间的名称位于相应JSON文件的['metadata']['id']键中。

因此列出所有工作区的简单代码是:

import os, glob, json
for fname in glob.glob(os.path.join(os.environ['HOME'], ".jupyter/lab/workspaces/*")):
     with open (fname, "r") as read_file:
         print (json.load(read_file)['metadata']['id'])

为方便起见,我用这段代码创建了一个gist。我还添加了一些化妆品来直接生成不同的URL。

答案 1 :(得分:3)

正如其他人指出的那样,工作空间文件位于0 1 2 3 4。每个工作区都由一个~/.jupyter/lab/workspaces表示,它实际上只是一个JSON文件。

如果您已安装CLI工具.jupyterlab-workspace,则以下一栏式为您提供了工作区的快速列表:

jq

示例输出:

cat ~/.jupyter/lab/workspaces/* | jq -r '.metadata.id'

答案 2 :(得分:1)

我认为您可以尝试

ls ~/.jupyter/lab/workspaces

每次创建一个新的工作区时,都会在此处生成一个相应的文件。更详细的文档是here

答案 3 :(得分:0)

使用最基本的 shell 命令:

grep metadata ~/.jupyter/lab/workspaces/* | sed -e 's/"/ /g' | awk '{print $(NF-1)}'

输出看起来像:

/lab
/lab/workspaces/auto-x
/lab/workspaces/foo