2014353_180000
2014353_190000
2014353_200000
2014354_180000
2014354_190000
2015355_190000
2015355_200000
...etc.
Lo que quiero es que de esos archivos pasarlos a su respectiva carpeta, como lo muestro a continuación.
Código:
¿Cómo podría hacerlo, alguna ayuda?├ 2014353/ | ├─ 2014353_180000 | ├─ 2014353_190000 | └─ 2014353_200000 ├ 2015354/ | ├─ 2015354_190000 | └─ 2015354_200000 etc ...
Tengo lo siguiente:
Código:
me aparece el siguiente error: import glob, os, shutil, os, errno, sys import subprocess from glob import glob from os.path import join from os import listdir, makedirs from os.path import isfile, join, exists from shutil import move def esFecha( nombre ): if ( len(nombre)<7 ): return False if ( not nombre[0:7].isdigit() ): return False dia = int( nombre[4:7] ) return dia>=1 and dia<=366 def moverFichero( nombre, listado ): directorio = nombre[0:7] destino = join( listado, directorio) if ( not exists(destino) ): makedirs(destino) origen = join( listado, nombre ) move ( origen, destino ) dirBase='C:\\Dats\\' listado = glob(join(dirBase,'D*','2*','B*','*','*')) ficheros = [ f for f in listdir(listado) if isfile(join(listado,f)) ] for fich in ficheros: if ( esFecha( fich ) ): moverFichero( fich, listado )
Código:
Traceback (most recent call last): File "directorio.py", line 28, in <module> ficheros = [ f for f in listdir(listado) if isfile(join(listado,f)) ] TypeError: coercing to Unicode: need string or buffer, list found