想在电纸书上看代码。首先要把所有的C文件转成txt文件,不然电纸书识别不了;最好还要保持目录结构。这种文件间的sync需求已经遇到好几次了,以前似乎看过有专门处理这个的工具。这次还是自己来吧。
处理方式首先就想到了递归,看过SICP后,总算可以视递归为理所当然了。想一次写对还有些困难,改了几下,总算可以用了。其实自己也没有仔细推导整个过程,只单是递归思考写出代码,不能用时再去想,能用就不想了。Python那几个模块用起来也蛋疼。
在我9.7寸电纸书上的效果是,所有的tab都被取消了,结果是毫无缩进;如果有缩进的话,恐怕会出现折行。想跳来跳去肯定是奢望了。从头到尾来考查一个子系统时看看还可以。最近实在是不想再多对着电脑。
import os
import shutil
import sys
pwd = "E:/TDDOWNLOAD/linux-3.2.13/linux-3.2.13/"
#dest = "F:/Documents/src/"
dest = "E:/Temp/linux/"
os.chdir(pwd)
def sync(old, new):
if os.path.isdir(old):
newpath = os.path.join(new, os.path.split(old)[-1])
os.makedirs(newpath)
for i in os.listdir(old):
sync(os.path.join(old,i), newpath)
else:
if old.find(".c") != -1:
lastpart = os.path.split (old)[-1]
newname = os.path.splitext(lastpart)[0] + ".txt";
shutil.copy(old, os.path.join(new, newname))
for i in os.listdir("."):
sync(i, dest)