同步操作将从 Kuangcp/script 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
import osimport sysimport getoptimport subprocessimport firered='033円[0;31m'green='033円[0;32m'yellow='033円[0;33m'blue='033円[0;34m'purple='033円[0;35m'cyan='033円[0;36m'white='033円[0;37m'end='033円[0m''''通过运行脚本,读取文件夹的文件生成目录,为了gitbook和wiki使用: python3 create_tree.py -h 查看帮助'''# 忽略的文件夹ignoreFolder=['.git', 'backup', '.vscode']# 所有要被忽略的文件ignoreFile=['PULL_REQUEST_TEMPLATE.md', 'ISSUE_TEMPLATE.md', 'CODE_OF_CONDUCT.md','README.md','Readme.md', 'CSS3.md', 'HTML5.md', '_Sidebar.md']result = []def logError(msg):print('%s%s%s'%(red, msg, end))def logInfo(msg):print('%s%s%s'%(green, msg, end))def printParam(verb, args, comment):print(' %s%-5s %s%-6s %s%s'%(green, verb, yellow, args, end, comment))def help():print('run: %s %s <verb> %s <args>%s'%('create_tree.py', green, yellow, end))printParam('-h', '', 'help')printParam('-s', '', 'show catalog')printParam('-a', '', 'append cataloag to SUMMARAY.md')# 列出所有文件的列表 并排好序def listFiles(name):lists = []dir_list = []temp = os.listdir(name)temp.sort()for r in temp:if(not os.path.isdir(name+'/'+r)):lists.append(r)else:dir_list.append(r)lists.sort()lists = dir_list + listsreturn lists# 处理文件def handlerFile(name, count, path):temp = ' '*countif not name in ignoreFile:result.append(temp+'* [ '+name[:-3]+' ](/'+path+')')# 处理标题(文件夹)def handlerFolder(name, count):temp = ' '*(int(count)-1)result.append(temp+'* 【 '+name+' 】')# 递归 读取文件夹def readFolder(name, count):handlerFolder(name,count)for fold in listFiles(name):if fold in ignoreFolder:continueif not os.path.isdir(name+'/'+fold):handlerFile(fold, count, name+'/'+fold)else:readFolder(name+'/'+fold, count+1)def readAll():Folders = os.listdir('./')Folders.sort()# 处理根目录下的md文件for fold in Folders:if fold.endswith('.md') and not fold in ignoreFile:result.append("* [ "+fold[:-3]+" ](./"+fold+")")# 得到根目录下所有文件夹,然后开始递归得到所有文件for fold in Folders:if os.path.isdir(fold) and not fold in ignoreFolder :readFolder(fold, 1)def main(verb=None):if verb == '-h':help()return# 只在终端输出if verb == "-s":readAll()for res in result:print(res)# 追加到SUMMARYif verb == "-a":readAll()subprocess.call('mv SUMMARY.md SUMMARY.md.bak',shell=True)with open('SUMMARY.md','w+') as dest:dest.write('# Summary\n\n* [ Introduction ](README.md)\n\n')for res in result:dest.write(res+'\n')logInfo('重新生成目录树完成!')fire.Fire(main)
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。