樓主用的linux,一旦數據達到幾萬,文件夾打開就會變卡,同時也方便同時分工協作,便於git管理,寫了個將大文件夾分割成多個小文件夾的腳本
如操作文件夾:img,腳本不破壞img的數據,創建img_1/img_2……,腳本與操作文件夾必須在同一根目錄
運行時需要手動修改:mv_file('img', 10) # 操作目錄,單文件夾存放數量
import os
import shutil
def mv_file(img, num):
list_ = os.listdir(img)
if num > len(list_):
print('長度需小於:', len(list_))
exit()
num_file = int(len(list_)/num) + 1
cnt = 0
for n in range(1,num_file+1): # 創建文件夾
new_file = os.path.join(img + '_' + str(n))
if os.path.exists(new_file+'_'+str(cnt)):
print('該路徑已存在,請解決沖突', new_file)
exit()
print('創建文件夾:', new_file)
os.mkdir(new_file)
list_n = list_[num*cnt:num*(cnt+1)]
for m in list_n:
old_path = os.path.join(img, m)
new_path = os.path.join(new_file, m)
shutil.copy(old_path, new_path)
cnt = cnt + 1
print('============task OK!===========')
if __name__ == "__main__":
mv_file('img', 10) # 操作目錄,單文件夾存放數量
