Originariamente inviata da
nicola75ss
Visto che ormai la powershell l'hai installata tanto vale sfruttarla.
Tramite il classico cd del prompt dei comandi posizionati all'interno della cartella contenente i tuoi file.
Esegui questo codice
codice:
gci | ? {-not $_.psiscontainer} | % {$_.creationtime.tostring('yyyy-MM-dd')} | sort -unique | % {new-item -type directory $_}
Questo recupera tutti i file, di ciascuno di essi ricava la data di creazione nel formato che hai chiesto tu (aaaa-mm-gg), li ordina per consentire di estrapolare solo i valori univoci e per ciascuna data di creazione crea la cartella.
Adesso esegui in successione questi altri due
codice:
$files = gci | ? {-not $_.psiscontainer}
$folders = gci | ? {$_.psiscontainer}
che non fanno altro che assegnare a due variabili rispettivamente l'elenco dei file e delle cartelle.
Infine, per smistare i file, questo
codice:
foreach ($file in $files) {foreach($folder in $folders) {if($file.creationtime.tostring('yyyy-MM-dd') -eq $folder) {move-item $file.fullname -destination $folder}}}
quest' ultimo usa due cicli annidati che scorrono l'elenco dei file e delle cartelle e, quando il nome della cartella coincide con la data di creazione del file nel formato aaaa-mm-gg lo sposta al suo interno. Con quattro righe hai risolto.