Эта программа на Python предполагает, что исходные файлы находятся в data
и что новая структура каталогов должна быть в target
(и что она уже существует).
Ключевым моментом является то, что os.path.walk
будет проходить через структуру каталогов data
и вызывать myVisitor
для каждого файла.
import os
import os.path
sourceDir = "data"
targetDir = "target"
def myVisitor(arg, dirname, names):
for file in names:
bandDir = file.split("-")[0]
newDir = os.path.join(targetDir, bandDir)
if (not os.path.exists(newDir)):
os.mkdir(newDir)
newName = os.path.join(newDir, file)
oldName = os.path.join(dirname, file)
os.rename(oldName, newName)
os.path.walk(sourceDir, myVisitor, None)