标签:空格 book mic 假设 info 一个 shel 文本文件 效果
一日一技:如何从多个Jupyter Notebook中找到需要代码段我喜欢使用Jupyter来写一些代码片段,如下图所示:
但时间长了以后,可能积累了非常多的Notebook,如下图所示:
某一天,我突然想找很久之前写的一段代码片段,但是我不记得是写在哪个Notebook里面了。应该怎么办呢?
如果我们使用vscode或者vim打开Notebook对应的 .ipynb,我们就会发现实际上Notebook也是文本文件,如下图所示:
那么,在Linux和macOS下面,我们就可以使用Shell命令查询里面的内容。
假设我只记得要找的代码片段里面有一个关键字 event。
那么首先我们使用 ls命令列出所有的Notebook如下图所示:
接着,通过管道传递给 grep:
代码运行完成,立刻就可以看到,只有 公众号演示.ipynb这个Notebook里面有包含 event的代码片段。于是我们在Jupyter里面打开这个Notebook就可以找到代码了。
你以为这样完成了吗?我们测试一下,如果Notebook的名字包含空格会怎么样?包含引号又会怎么样?
先看包含空格的时候:
包含引号的时候:
这种情况怎么办呢?这个时候就需要换一种输出方式:
find *.ipynb -print0 | xargs -0 grep ‘未闻Code‘
运行效果如下图所示:
一日一技:如何从多个Jupyter Notebook中找到需要代码段
标签:空格 book mic 假设 info 一个 shel 文本文件 效果
原文地址:https://blog.51cto.com/15023263/2559162