天天看點

Python實作批量移動檔案到指定檔案夾

由于電腦中有大量檔案是放在一個檔案夾中,每個檔案可能都有幾個版本,想要把同類檔案全部放到各自檔案夾下。

例如有以下檔案,想要放到隻包含檔案号和檔案名的檔案夾下,YCRO358-E-871-XT-003 690VAC DP SWBD Terminal Diagram

YCRO358-E-871-XT-003 Rev.1 690VAC DP SWBD Terminal Diagram.pdf

YCRO358-E-871-XT-003 Rev.2 690VAC DP SWBD Terminal Diagram.dwg

YCRO358-E-871-XT-003 Rev.3 690VAC DP SWBD Terminal Diagram.pdf

檔案夾都是批量事先建好的,和檔案放在同一個目錄下。

下面用Python實作批量移動,

import os,shutil
for folderName, subfolders, filenames in os.walk('D:\\3 BP\\2 Drawings\\Yard Scope'):   # 這個是檔案和檔案夾所在目錄
    for subfolder in subfolders:
        for filename in filenames:
            if filename[:20] == subfolder[:20]:   #這個是用來對比檔案和檔案夾的前20個字元,如果一樣,就移動
                try:     #這個try一定要有的,因為不加的話,一旦出錯了,就不繼續執行了
                    shutil.move(folderName + '\\'+ filename, folderName + '\\'+ subfolder)
                except OSError:
                    pass