2017-02-12 22 views
-2

如何使脚本(最好在python中,但我打开其他方式以及)通过多个子文件夹解析并仅复制文件与某些扩展名(如.mp3 & .mp4等)到Linux/Ubuntu中的另一个文件夹?脚本移动通过多个文件夹,并只复制具有特定分机的文件到另一个单一的文件夹

+1

对于击:[这个问题](http://stackoverflow.com/questions/15617016/cp-copy-all-files -with-a-certain-extension-from-all-subdirectories)(用'mv'替换'cp') –

+0

除非有令人信服的理由来编写自定义实现,否则我会使用'find'。 – chepner

回答

0

你会想要使用os.walk走你的目录树。然后,对于每个文件,请使用os.path.splitext获取扩展名。请注意,splitext将返回基本名称和扩展名。

然后使用shutil.copy复制到您的目标目录。

轻量级示例(使用/作为假定起点):

import os 
import os.path 
import shutil  

for root, dir, files in os.walk('/'): 
    for ffile in files: 
     if os.path.splitext(ffile)[1] in ('.mp3', '.mp4'): 
      src = os.path.join(root, ffile) 
      shutil.copy(src, [YOUR_TARGET_DIR]) 
+0

你可以使用'ffile.endswith((''jpg','.png'))''。 – vaultah

相关问题