|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Apr 2005
Messaggi: 421
|
Craere file .bat
Salve,sto cercando di creare un file bat per cancellare il contenuto di una cartella,ma non solo i file,ma anche le sottocartelle,non eliminando la cartella principale.
Per il momento,l'unica soluzioe che ho trovato è questa : rmdir /Q /S c:\nome cartella MKDIR C:\nome cartella Praticamente,cancello completamente la cartella,poi la ricreo. Se uso il comando del mi cancella solo i file. C'è un modo più semplice? Grazie |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Feb 2006
Città: Parma
Messaggi: 3010
|
Uso uno script per svuotare quotidianamente una condivisione di scambio.
Questa condivisione ha diritti particolari che deve mantenere, quindi non posso eliminare la cartella e ricrearla. Codice:
@ECHO OFF
set scambio="D:\temp"
dir /AD /B %scambio% >nul 2>nul && GOTO SCAMBIODIR
GOTO NOSCAMBIODIR
:SCAMBIODIR
for /F "delims=" %%i in ('dir /AA /B /S %scambio%') do del /Q /F /S "%%i"
for /F "delims=" %%i in ('dir /AH /B /S %scambio%') do del /Q /F /S /AH "%%i"
for /F "delims=" %%i in ('dir /AR /B /S %scambio%') do del /Q /F /S /AR "%%i"
for /F "delims=" %%i in ('dir /AD /B /S %scambio%') do rmdir /S /Q "%%i"
exit
:NOSCAMBIODIR
md %scambio%
Il secondo tutti quelli nascosti. Il terzo tutti i read-only. Il quarto fa fuori tutte le directory. I diritti della condivisione impediscono il cambio di ownership e dei permessi ai gruppi che possono accedere, assicurando la certezza che la rimozione abbia il diritto di essere eseguita. Il test di esistenza con creazione è presente per aver certezza che non capitino cose impreviste. Ovviamente non sono certo che sia la strada più breve, ma non ho trovato alternative meno contorte (salvo forse collassare i rem dei file in solo ciclo, ma ho preferito lasciarli distinti).
__________________
~Breve riferimento ai comandi GNU/Linux (ormai non molto breve...) |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 08:41.



















