批次大量移動不同檔案的方法?
我的檔案結構是
我的影片 -> 電影名字資料夾 -> 字幕資料夾 -> 字幕檔案
電影名字全是不同的
字幕資料夾名字都是叫Subs
字幕資料夾裡面大量不同語言的字幕檔案
請問有沒有方法可以批次一鍵把所有字幕檔案拉到他們自己各自的電影名字資料夾
我的系統是Win10 64bit
ggyy020406 wrote:
因為有2千多個資料夾...(恕刪)
手工慢慢用吧!
這種沒有事先規劃分類的檔案,
就是要一個一個手動做,
企業公司在整合系統時,
也是要先沒日沒夜的KEY資料分類,
沒有你想得那麼簡單。

https://pastebin.com/pbpJU08R
他的做法是把這個py拉進資料夾
掃到有English.srt這個檔案就自動更名為上一級subfolder的名字(即電影名字)
外加把該字幕檔拉出去他的上一級subfolder
上面那個指令是很接近我想要的
(其實我也是一樣只是想要把English.srt這個檔案拉走就可以)
這個py有做到拉的動作,但是他需要每個資料夾都丟進去這個py
我想說有沒有可以放到parent folder就可以執行
他自己把檔案拉進自己各自的subfolder
其實我也有google過別人說有一套叫Bulk Rename Utility的軟件的收費版可以做到
我有付費買了,可是太專業不會玩
ggyy020406 wrote:
批次大量移動不同檔案...(恕刪)
小程式版
放在電影資料夾外面,像左邊範例一樣
說穿了會寫程式彈性會比腳本好
腳本優點就是無腦直接錄完搞定

import shutil
import os
#PATH = "./test" 電影資料夾路徑
try:
PATH = input("please enter your folder name : ")
folder_all = os.listdir(PATH)
print(f"共有{len(folder_all)}個資料夾")
for folder_name in folder_all:
sub_path = f"{PATH}/{folder_name}/Subs" # 字幕檔位置
copy_list = os.listdir(sub_path)
for name in copy_list:
src_path = f"{sub_path}/{name}" # 字幕檔完整路徑
dst_path = f"{PATH}/{folder_name}/{folder_name}.sub" # 目的地完整路徑,改成資料夾名稱.sub
print(src_path+"->"+dst_path)
shutil.copy(src_path, dst_path) #複製
# 電影名字資料夾/字幕資料夾/字幕檔案 => 電影名字資料夾
except Exception as e:
print(e)
內文搜尋

X