Il comando “forfiles” è estrammente utile quando si voglio shedulare delle operazioni da eseguire su uno o più file.
Di seguito farò un esempio di utilizzo del comando, proponendo una linea di comando che cancella, dalla cartella “drive:\folder”, tutti i file jpg più vecchi di 7 giorni.
c:\windows\system32\Forfiles -p drive:\folder -s -m *.jpg -d -7 -c “cmd /c del /q @path”
p = path
s = cerca anche nelle subdirectory del path principale
m = file con criteri (mark) specificati
d = ultima modifica più vecchia di (giorni)
c = esegui il comando
Uno script come questo può essere utile, per cancellare immagini o filmati di telecamere e/o sistemi di videosorveglianza (sia per legge che per motivi di spazio), dopo un periodo prestabilito.
Per approfondire la sintassi del comando fate riferimento al sito Microsoft:
http://technet.microsoft.com/en-us/library/cc753551(WS.10).aspx
ne ho fatte, ma ho esaurito le risorse. grazie lo stesso…
ciao, io l’ho usato su xp 32, 7 pro a 64, 2003 server 32 e 2008 a 64
così su 2 piedi non mi viene in mente nulla, andrebbero fatte delle prove… 🙂
Non so se dipende dall’incompatibilità della mia versione windows 7 Ultimate SP1 64 bit col comando, ma sarebbe utile se riuscissi a risolvere per automatizzare la cancellazione di file log più vecchi di una certa data. Tu che versione di windows usi ? Oppure c’è modo di risolvere ? ho fatto diversi tentativi, anche con glia apici, ho googlato, ma nulla… Hai idea ?
—
In ogni caso grazie per guida e risposta…
è come se non associasse il secondo switch “c” al comando cmd ma sempre al forfiles.
la stringa di per se è giusta
Ho Windows 7 Ultimate 64 Bit
Dopo aver unicamente aggiustato il mio percorso, e l’estensione *.log purtroppo il comando mi risponde con l’errore:
C:\Users\MioUser>Forfiles -p D:\FREE_FILE_SYNC_LOG -s -m *.log -d -7 -c “cmd /c del /q @path”
ERRORE: Sintassi non valida. L’opzione ‘/c’ non è consentita per un
numero di volte superiore a ‘1’.
Digitare “FORFILES /?” per informazioni sull’utilizzo.
Ciao,
dipende… 🙂
potrebbe bastare aggiungere uno switch tipo: /s
se comunque dai un’occhiata a Technet il comando “del” è ampiamente documentato 😉
Grazie mille.. Ma se volessi cancellare anche le cartelle che al momento rimangono anche se vuote?
Buona Giornata
grazie, ottimo