In [5]:
# _*_ coding: utf-8 _*_
'''
递归当前目录及子目录中的ipynb,转为markdown
忽略以下目录:
.git: git repo目录
.ipynb_checkpoints: 临时存储目录
综上,忽略以.开头的目录
'''
import os
def path_should_ignore(path):
head, tail = os.path.split(path)
if tail.startswith('.'):
return True
else:
return False
def list_ext_files(dir_path, ext):
result_files = []
for root, dirs, files in os.walk(dir_path):
if path_should_ignore(root):
continue
for file in files:
if file.endswith(ext):
result_files.append(os.path.join(root, file))
return result_files
# 注意:下面的注释语句没有输出, 虽然系统shell能够解析~/mygit, 但函数解析不了。
# print list_ext_files("~/mygit", ".ipynb")
# for Mac
# files = list_ext_files("/Users/weixi/mygit", ".ipynb")
# for Windows
files = list_ext_files('D:/MyGit/lab/DevTools', '.ipynb')
In [6]:
for file in files:
command = "jupyter nbconvert --to markdown {}".format(file);
os.system(command)