사용자 도구

사이트 도구


renamefile

Resilio Sync 는 긴가민가한 파일에다가 .1을 붙이는데 무슨일에선지 내 데이터 대부분에 .1이 붙었다. 대상폴더 파일 네임의 가장 마지막 .1

import os
import shutil
import re
#folder = 'a'
folder = # "대상 폴더"
temp = "F:\\temp"
pathiter = (os.path.join(root, filename)
    for root, _, filenames in os.walk(folder)
    for filename in filenames
)
for path in pathiter:    
    m = re.search('\.1\.[^.]+$', path)
    m2 = re.search('\.[^.]+$', path)    
    if m:        
        newname = path.replace(m.group(), m2.group())        
        if newname != path:
            try:
                os.rename(path,newname)
            except FileExistsError as e:
                try:
                    shutil.move(path, temp)
                except:
                    shutil.move(path, temp + "x")
renamefile.txt · 마지막으로 수정됨: 2021/04/13 06:54 (바깥 편집)