Script batch controllo disco CHKDSK: salva il report
Uno script batch controllo disco CHKDSK permette di verificare un’unità Windows e archiviare l’output in un file di testo sul desktop. Il comando proposto usa CHKDSK C: /scan, una modalità di controllo online adatta alle unità formattate con NTFS e progettata per cercare problemi senza riavviare il computer. Il report viene salvato nel file CHKDSK_C.txt, mentre il risultato resta disponibile anche nella finestra del Prompt dei comandi. Per controllare il disco di sistema è consigliabile avviare il file batch con privilegi di amministratore. La procedura funziona su Windows 10 e Windows 11, con alcune differenze legate al file system e alla configurazione del desktop.
Cosa fa lo script batch controllo disco CHKDSK
CHKDSK è lo strumento integrato di Windows che verifica la struttura del file system e, in determinate modalità, cerca errori logici sul disco. Lo script seguente controlla l’unità C: con il parametro /scan, reindirizza sia l’output normale sia gli eventuali messaggi di errore nel file di testo e aggiunge alla fine il codice restituito dal comando.
Il parametro /scan esegue una verifica online del volume NTFS. Questa modalità non corrisponde a una riparazione completa: serve soprattutto a controllare lo stato del file system senza bloccare l’unità durante l’uso normale.
Lo script presenta queste caratteristiche:
- controlla l’unità
C:; - salva il risultato sul desktop dell’utente corrente;
- crea o sovrascrive il file
CHKDSK_C.txt; - registra anche il codice di uscita di CHKDSK;
- visualizza un messaggio finale nella finestra del Prompt dei comandi;
- usa
2>&1per includere nel report anche gli errori restituiti dal comando.
Il file viene sovrascritto a ogni esecuzione perché il simbolo > crea un nuovo contenuto. Il doppio simbolo >> usato nelle ultime righe aggiunge invece informazioni alla fine del report.
Come creare il file BAT per controllare il disco
Passo 1: aprire Blocco note
Aprire Blocco note da Windows e incollare il codice seguente senza modificarne la struttura:
@echo off setlocal EnableExtensions set "UNITA=C:" set "LOG=%USERPROFILE%DesktopCHKDSK_%UNITA:~0,1%.txt" echo Controllo dell'unità %UNITA% in corso... echo Il report verra salvato in: echo %LOG% echo. chkdsk %UNITA% /scan > "%LOG%" 2>&1 set "ESITO=%ERRORLEVEL%" >> "%LOG%" echo. >> "%LOG%" echo ======================================== >> "%LOG%" echo Codice restituito da CHKDSK: %ESITO% >> "%LOG%" echo ======================================== if "%ESITO%"=="0" ( echo Controllo completato. Verificare il report sul desktop. ) else ( echo CHKDSK ha restituito il codice %ESITO%. echo Aprire il report sul desktop per leggere i dettagli. ) echo. pause endlocal
La variabile UNITA identifica il volume da controllare, mentre la variabile LOG indica il percorso del rapporto. La parte %UNITA:~0,1% estrae la lettera dell’unità e permette di ottenere il nome CHKDSK_C.txt.
Passo 2: salvare il file con estensione BAT
In Blocco note selezionare File > Salva con nome. Nel campo del nome digitare:
controllo_disco.bat
Nel menu Salva come scegliere Tutti i file e impostare la codifica UTF-8 oppure ANSI. Salvare il file sul desktop, così sarà facile trovarlo e avviarlo.
Se Blocco note aggiunge automaticamente .txt, il file potrebbe diventare controllo_disco.bat.txt e non verrà eseguito come script batch. Per evitare il problema, racchiudere il nome tra virgolette nel campo di salvataggio:
"controllo_disco.bat"
Passo 3: eseguire CHKDSK con privilegi elevati
Fare clic con il tasto destro su controllo_disco.bat e scegliere Mostra altre opzioni > Esegui come amministratore in Windows 11. In Windows 10 il comando può apparire direttamente come Esegui come amministratore.
Windows potrebbe mostrare la finestra di Controllo dell’account utente. Selezionare Sì per consentire l’avvio dello script. La finestra del Prompt dei comandi resterà aperta fino alla pressione di un tasto, grazie al comando pause.
Al termine, sul desktop sarà presente il file CHKDSK_C.txt. Aprirlo con Blocco note o con un altro editor di testo per leggere il volume controllato, il file system rilevato, gli eventuali errori e il codice restituito.
Come controllare un’altra unità o salvare più report
Per controllare un’unità diversa da C:, modificare questa riga:
set "UNITA=C:"
Per esempio, il controllo dell’unità D: richiede:
set "UNITA=D:"
Il nome del report diventerà automaticamente CHKDSK_D.txt. La lettera deve corrispondere a un volume realmente presente in Esplora file; una lettera errata produce un errore e non consente di effettuare il controllo.
Il percorso %USERPROFILE%Desktop indica il desktop dell’account Windows che esegue lo script. Se il desktop è stato spostato o sincronizzato con OneDrive, il percorso effettivo potrebbe essere diverso. In quel caso modificare la riga LOG con il percorso corretto, per esempio:
set "LOG=%USERPROFILE%OneDriveDesktopCHKDSK_%UNITA:~0,1%.txt"
Il percorso OneDriveDesktop va utilizzato solo se la cartella del desktop è realmente reindirizzata a OneDrive. Per verificarlo, fare clic con il tasto destro sulla cartella Desktop, scegliere Proprietà, aprire la scheda Percorso e controllare l’indirizzo visualizzato.
Per conservare i risultati di più controlli senza sovrascrivere il precedente, è possibile cambiare il nome del file in modo manuale prima di ogni esecuzione, ad esempio CHKDSK_C_lavoro.txt o CHKDSK_D_archivio.txt. Il codice proposto non inserisce una data automatica, perché il formato della variabile %DATE% cambia in base alle impostazioni internazionali di Windows.
/scan, /f e limiti del controllo
CHKDSK C: /scan controlla online un volume NTFS, ma non forza la correzione di tutti gli errori. Se Windows segnala problemi che richiedono una riparazione, è possibile eseguire una seconda verifica con il parametro /f, sostituendo nel file batch la riga del comando con:
chkdsk %UNITA% /f > "%LOG%" 2>&1
Il parametro /f corregge gli errori logici del file system, ma CHKDSK deve poter bloccare il volume durante l’operazione. Se l’unità C: è utilizzata da Windows, il sistema può chiedere di pianificare il controllo al prossimo riavvio; il controllo verrà eseguito prima del caricamento completo di Windows.
La riparazione con /f non deve essere interrotta spegnendo il computer o chiudendo forzatamente la procedura. Prima di usarla è opportuno salvare i documenti aperti e lasciare collegato il computer all’alimentazione.
CHKDSK non è uno strumento completo per diagnosticare un guasto fisico del disco. Un rapporto con errori ripetuti, settori danneggiati o blocchi di lettura può indicare un problema hardware; in questi casi è prudente salvare subito i dati importanti e usare anche lo strumento diagnostico del produttore dell’unità.
Lo script batch controllo disco CHKDSK automatizza la verifica e la conservazione del report, ma non sostituisce un backup dei file personali né una diagnosi hardware approfondita.
Potrebbe interessarti anche:
- Windows Update bloccato allo 0 Windows 11: script PowerShell
- Spooler di stampa bloccato Windows 11: script CMD
- Avviso modulo WordPress JavaScript: tutorial sicuro
- Link esterni WordPress JavaScript: sicurezza e nuova scheda
FAQ
Sì, è consigliabile usare Esegui come amministratore, soprattutto per controllare l’unità di sistema o usare il parametro /f. Senza privilegi elevati Windows può limitare alcune operazioni.
Il report viene salvato sul desktop dell’utente che esegue il file nel percorso %USERPROFILE%DesktopCHKDSK_C.txt. Se il desktop è reindirizzato a OneDrive, il percorso deve essere modificato nello script.
Sì. Basta sostituire set "UNITA=C:" con la lettera corretta, ad esempio `set "UNITA=
/scan esegue una verifica online del volume NTFS, mentre /f corregge gli errori logici e può richiedere un riavvio se il volume è in uso. /scan non equivale a una riparazione completa.
Il problema può dipendere da un percorso del desktop diverso, da permessi insufficienti o da un errore nella lettera dell’unità. Controllare la variabile LOG e avviare il file batch come amministratore.
Altri articoli di questa serie:
- Script batch ripristino rete Windows: DNS e TCP/IP
- Script CMD per pulire Windows Update e riavviare i servizi
- Script batch riparazione file sistema Windows: tutorial
- Script CMD backup cartelle Windows con Robocopy
- Script batch pulizia file temporanei Windows: guida sicura
- Script cmd controllo servizi Windows: rapporto
- Script batch controllo spazio disco Windows: avvisi
- Script CMD: trova i file più grandi in Windows
- Script CMD: punto di ripristino Windows in un clic
