|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jan 2006
Messaggi: 473
|
Creare directories e spostare files in automatico
Ciao a tutti,
avete in mente un modo automatizzato (via sware specifico, o cmd DOS) per: - leggere i nomi di files (avi) da una directory; - creare delle sottodirectories della stessa directory con il nome di ciascuno dei files (senza l'estensione); - spostare ciascuno dei files nella sua sottodirectory di competenza? Cioè, una cosa che sarebbe un lavorone a mano, ma facile facile con un algoritmo..... Ciao e grazie in anticipo..! |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jul 2007
Messaggi: 1092
|
In pratica avendo ad esempio
pippo.avi poldo.avi pluto.avi vorresti creare tre cartelle pippo poldo pluto e in ciascuna spostare il file corrispondente. E' giusto? |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Jul 2007
Messaggi: 1092
|
Io ti consiglio di usare la powershell della microsoft.
La puoi scaricare da qui http://www.microsoft.com/windowsserv.../download.mspx nel caso non lo abbia già, per poterla installare è necessario avere il framework .net 2.0 http://www.microsoft.com/downloads/d...d-aab15c5e04f5 Una volta installata la powershell, la avvii digitando da esegui powershell. A questo punto, come faresti col classico prompt dei comandi, raggiungi la cartella che contiene i tuoi file avi ed esegui in successione questi quattro comandi: Codice:
gci *.avi | % {[io.Path]::GetFileNameWithoutExtension($_)} | % {new-Item -type directory $_}
I due comandi sottostanti sono molto semplici. Il primo assegna alla variabile $files l'elenco dei file avi e il secondo assegna alla variabile $folders l'elenco di tutte le cartelle (quelle appena create) $files = gci *.avi $folders =Get-ChildItem | ? {$_.psiscontainer} Codice:
foreach ($file in $files) {foreach($folder in $folders) {if([io.Path]::GetFileNameWithoutExtension($file.Name) -eq $folder) {move-item -literalpath $file.fullname -destination $folder}}}
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Jan 2006
Messaggi: 473
|
Grande, grazie mille....!!
Stassera provo.....e ti so dire. |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Jan 2006
Messaggi: 473
|
Grazie John, per due cose: mi hai risolto il problema, e mi hai fatto conoscere la PowerShell...!
Se passi da Milano, fai un fischio, che avrei piacere di bere una birra insieme ! |
|
|
|
|
|
#6 | |
|
Senior Member
Iscritto dal: Jul 2007
Messaggi: 1092
|
Quote:
P.S. Se inizi a usare la powershell non ne potrai più fare a meno. |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 18:19.




















