|
|
|
|
Strumenti |
12-02-2024, 08:25 | #1 |
Member
Iscritto dal: Jun 2004
Città: Reggio Emilia
Messaggi: 148
|
Creare un BAT in DOS
Ho programmato una telecamera per salvare su un server (un mio vecchio PC che ora utilizzo solo per questa funzione) i video prodotti dalla stessa in caso di allarme. Già la "creazione" del server (su windows 10) mi ha creato non pochi problemi ma ora, con grande soddisfazione, tutto funziona. Ora dovrei attivare una pianificazione (usando appunto l'utilità di pianificazione di win10) che mi elimini ogni giorno la directory più vecchia di "tot" giorni.
Prima di mettere in funzione la telecamera avevo già predisposto un semplice .bat che funzionava a meraviglia (cancellava cioè i file MP4 più vecchi di 3 giorni). Il problema però è che ho scoperto che la telecamera salva i video in questo modo: Video (directory principale) 2024 (anno) 02 (mese) 10 (giorno) 11 12 13 ... In altre parole la directory da cancellare (poniamo ogni 4 giorni quindi nell'esempio proposto la directory del giorno 13) cambia ogni volta, mentre il mio .bat semplicemente puntava alla directory principale. Quindi ... qui mi sono fermato perché non ho le competenze per proseguire. Anni fa, proprio su questo forum, a suo tempo un "caro" utente mi aveva predisposto un piccolissimo file .PHP che faceva la stessa cosa ogni qualvolta un utente visualizzava sul sito l'ultima foto proposta. Se pensate possa servire lo posto ma, data la differenza di linguaggi, credo serva a poco. Qualcuno ha un idea ? Grazie Roberto
__________________
www.valledeicavalieri.it |
12-02-2024, 08:28 | #2 |
Member
Iscritto dal: Jun 2004
Città: Reggio Emilia
Messaggi: 148
|
Dimenticavo, il BAT che avevo scritto era il seguente:
FORFILES /P “D:\VideoCooperativa” /M *.JPG /D -1 /C “CMD /C DEL @PATH”
__________________
www.valledeicavalieri.it |
14-02-2024, 09:57 | #3 |
Member
Iscritto dal: Jun 2004
Città: Reggio Emilia
Messaggi: 148
|
Scusatemi: nessuna idea ?
__________________
www.valledeicavalieri.it |
14-02-2024, 11:19 | #4 |
Senior Member
Iscritto dal: Jul 2008
Messaggi: 7971
|
Se devi cancellare le cartelle più vecchie di 4 giorni non puoi fare così? Probabilmente và sistemato un po' ma dovresti partire da questa base.
Codice:
FORFILES /p "D:\VideoCooperativa" /s /m *.* /D -4 /C "cmd /c del @relpath"
__________________
System Failure |
17-02-2024, 07:52 | #5 | |
Member
Iscritto dal: Jun 2004
Città: Reggio Emilia
Messaggi: 148
|
Quote:
Ho girato ancora in rete ed ho trovato (spero ti interessi) questo: @echo on :: set folder path set dump_path=d:\VideoCooperativa\2024\02 :: set min age of files and folders to delete set max_days=4 :: remove files from %dump_path% forfiles -p %dump_path% -m *.* -d -%max_days% -c "cmd /c del /q @path" :: remove sub directories from %dump_path% forfiles -p %dump_path% -d -%max_days% -c "cmd /c IF @isdir == TRUE rd /S /Q @path" cmd /k Il primo e ultimo "comando" li toglierò una volta testato bene il tutto. Funziona ma l'unico inconveniente è che ogni mese dovrò modificare il batch con il numero mese successivo ed ogni anno ... il nuovo anno. Grazie ancora Roberto
__________________
www.valledeicavalieri.it |
|
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 23:07.