DarkMatter in Cyberspace
  • Home
  • Categories
  • Tags
  • Archives

归并目录的Python实现


待分析项目是OSGi结构,源代码目录src散布在多个模块目录下(如origin目录所示),现在需要分析整个项目的源代码,要将各个src目录下的所有内容合并到一起,

origin ├── mod1 │ ├── conf │ │ └── app.conf │ ├── lib │ │ └── dep.jar │ └── src │ └── com │ └── boco │ └── d21.java ├── mod2 │ ├── conf │ │ └── app.conf │ ├── lib │ │ └── dep.jar │ └── src │ └── com │ └── boco │ └── d22.java └── build.xml

合并后的目录结构如下:

final ├── mod1 │ ├── conf │ │ └── app.conf │ └── lib │ └── dep.jar ├── mod2 │ ├── conf │ │ └── app.conf │ └── lib │ └── dep.jar ├── build.xml └── src └── com └── boco ├── d21.java └── d22.java

Python实现如下:

import os import distutils.dir_util basedir = '/home/chad/tmp/final' src_name = 'src' for root, dirs, files in os.walk(basedir): print 'root = ', root if root.endswith(src_name): dst = basedir+'/'+src_name distutils.dir_util.copy_tree(root, dst) distutils.dir_util.remove_tree(root) print 'move ', root, ' to ', dst

可以注释掉remove_tree一行,从而验证拷贝过程中是否丢失了文件。



Published

May 22, 2013

Last Updated

May 22, 2013

Category

Tech

Tags

  • Python 136

Contact

  • Powered by Pelican. Theme: Elegant by Talha Mansoor