Pagina 1 di 1
FILE BATCH - Creare cartelle da lista di file, spostando gli stessi all'interno delle cartelle
Inviato: lun dic 04, 2023 5:21 pm
da Farrokh_46
Ciao a tutti,
dovrei creare un file bat che da una lista di file mi generi in automatico delle cartelle con lo stesso nome dei file e che sposti i singoli file nelle singole cartelle create.
Esempio:
da File "A" con file bat genero: Cartella "A" contenente file "A"
da File "B" con file bat genero: Cartella "B" contenente file "B"
da File "C" con file bat genero: Cartella "C" contenente file "C"
Grazie a tutti in anticipo :)
Re: FILE BATCH - Creare cartelle da lista di file, spostando gli stessi all'interno delle cartelle
Inviato: lun dic 04, 2023 10:17 pm
da Zigul
Questo dovrebbe funzionare, devi solo inserire i percorsi giusti al posto delle parentesi quadre:
Codice: Seleziona tutto
@echo off
setlocal enabledelayedexpansion
set "sourceFolder=[percorso cartella sorgente]"
set "destinationFolder=[percorso cartella destinazione, anche la stessa della sorgente]"
for %%F in ("%sourceFolder%\*.*") do (
set "fileName=%%~nF"
set "newFolder=!destinationFolder!\!fileName!"
md "!newFolder!" 2>nul
move "%%F" "!newFolder!\%%~nxF"
)
endlocal
Re: FILE BATCH - Creare cartelle da lista di file, spostando gli stessi all'interno delle cartelle
Inviato: mar dic 05, 2023 9:47 am
da Farrokh_46
Ciao Zigul,
funziona perfettamente !
Grazie infinite
Re: FILE BATCH - Creare cartelle da lista di file, spostando gli stessi all'interno delle cartelle
Inviato: mar dic 05, 2023 10:41 am
da CUB3
Bellissimo script, Zigul!
Solo un suggerimento: quando scrivi del codice, utilizza i tag appositi per dargli il giusto risalto e mantenere i caratteri corretti 
Re: FILE BATCH - Creare cartelle da lista di file, spostando gli stessi all'interno delle cartelle
Inviato: mar dic 05, 2023 11:19 am
da Zigul
Il merito dello script va all'AI (Perplexity); le prime 4 o 5 volte ha proposto script che non funzionavano adeguatamente, ma poi "siamo riusciti" a calibrare quello giusto (io ho fatto perlopiù solo da tester).
Grazie a CUB3 per il suggerimento e per aver modificato il mio post, così è decisamente più chiaro.
Re: FILE BATCH - Creare cartelle da lista di file, spostando gli stessi all'interno delle cartelle
Inviato: mar dic 05, 2023 1:48 pm
da crazy.cat
Zigul ha scritto: ↑lun dic 04, 2023 10:17 pm
setlocal enabledelayedexpansion
Mi sai dire il perché di questa riga?
Tengo da parte questo file per vedere se posso ricavarci un articolo.
Re: FILE BATCH - Creare cartelle da lista di file, spostando gli stessi all'interno delle cartelle
Inviato: mar dic 05, 2023 3:12 pm
da Zigul
Senza quella opzione lo script creava un'unica cartella "!newfolder!" e spostava lì tutti i file; quel comando permette di gestire la variabile "filename" (e quindi poi "newfolder") con un valore (ossia un nome, in questo caso) differente per ogni ciclo di "for".
Re: FILE BATCH - Creare cartelle da lista di file, spostando gli stessi all'interno delle cartelle
Inviato: mar dic 05, 2023 3:48 pm
da crazy.cat
Zigul ha scritto: ↑mar dic 05, 2023 3:12 pm
Senza quella opzione lo
script creava un'unica cartella "!newfolder!" e spostava lì tutti i
file; quel comando permette di gestire la variabile "filename" (e quindi poi "newfolder") con un valore (ossia un nome, in questo caso) differente per ogni ciclo di "
for".
Interessante, se riesco a tirarci fuori un articolo ti inserisco come coautore.
L'idea può essere utile anche ad altri.
Re: FILE BATCH - Creare cartelle da lista di file, spostando gli stessi all'interno delle cartelle
Inviato: mar dic 05, 2023 9:23 pm
da Zigul
Se devo essere onesto, come coautore penso dovresti citare Perplexity: non avrei saputo scrivere quel codice da solo e questo è forse il terzo file batch che ho usato in vita mia... comunque non nascondo che ho salvato lo script, non sia mai potesse tornare utile, quindi grazie a Farrokh_46 per lo spunto.