Che cos'è il formato di file BAT?
.bat è l'estensione per i file batch DOS eseguiti dalla shell dei comandi di Windows, cmd.exe.
Contenuti dei file .bat
I file .bat contengono comandi per la shell dei comandi. I file batch consentono agli utenti di automatizzare attività ed eseguire più comandi in sequenza, gestire applicazioni o controllare le risorse del computer. Un esempio ben noto è AUTOEXEC.BAT, situato nella cartella radice dell'unità di sistema su Windows 95, 98 e Me; i comandi in quel file venivano eseguiti automaticamente all'avvio del sistema per lanciare applicazioni e modificare le impostazioni predefinite. Oggi i file .bat rimangono pienamente supportati su tutte le versioni di Windows; il loro stretto parente, .cmd, è l'equivalente dell'era Windows NT con le estensioni dei comandi abilitate per impostazione predefinita.
Posso aprire i file .bat?
I file .bat memorizzano i comandi in testo semplice e possono essere modificati con qualsiasi editor di testo. Tuttavia, gli utenti dovrebbero prestare attenzione a come aprono i file .bat: per impostazione predefinita, fare doppio clic su un file .bat lo carica automaticamente in memoria ed esegue i suoi comandi. Facendo clic con il tasto destro sul file e selezionando Modifica dal menu contestuale, gli utenti possono modificare il file .bat senza eseguirne le istruzioni. Per uno scripting più avanzato, gli script PowerShell (.ps1) rappresentano l'alternativa moderna di Windows.
Un file .bat può essere pericoloso?
Tenendo presente che i comandi salvati nei file .bat possono consentire al sistema di eseguire virtualmente qualsiasi operazione, accedere alle risorse di sistema o installare software, il rischio che tali file possano essere utilizzati per installare software potenzialmente pericoloso o addirittura destabilizzare la macchina è reale. Pertanto si raccomanda agli utenti di non eseguire file .bat provenienti da fonti sconosciute. Le migliori pratiche raccomandano che prima di eseguire qualsiasi file .bat gli utenti debbano esaminarne il contenuto, anche per i file che sono presenti sulla macchina da molto tempo. Un programma dannoso potrebbe aver modificato uno o più file .bat innocui in modo che la loro esecuzione causi ora danni al sistema o installi software dannoso.
Sicurezza e incolumità
RISCHIO: HIGHUn file .bat è ESEGUIBILE: fare doppio clic esegue immediatamente ogni comando con i tuoi privilegi utente - può eliminare file, modificare impostazioni, scaricare e lanciare altri programmi o disabilitare strumenti di sicurezza. È un comune vettore di malware, spesso offuscato o utilizzato come «dropper» che recupera un payload reale, ed è spesso camuffato da utile «fix», «crack» o «ottimizzatore». GESTIONE SICURA: non fare mai doppio clic su un .bat non attendibile. Per ispezionarlo, fai clic con il tasto destro su Modifica (o aprilo in Notepad/Notepad++/VS Code) e LEGGI i comandi: l'apertura in un editor NON li esegue. Segnali di allarme all'interno: comandi che chiamano powershell/curl/bitsadmin per scaricare file, stringhe base64 o illeggibili, tentativi di disabilitare Defender o scritture nelle cartelle di sistema e nel registro. In caso di dubbi, carica il file su VirusTotal (è testo, quindi è sicuro caricarlo) ed eseguilo solo all'interno di una VM/sandbox.
Dettagli del formato
in sintesiProgrammi che aprono file BAT
Dettagli tecnici
specifiche approfondite| Motore di esecuzione | cmd.exe (Windows Command Processor) - la shell legge ed esegue ogni riga sequenzialmente al runtime |
| Codifica del file | ANSI / Windows-1252 o ASCII; UTF-8 è accettato ma un BOM (EF BB BF) all'inizio interrompe il primo comando |
| Magic bytes / firma | Nessuna - testo semplice identificato solo dall'estensione .bat; la maggior parte dei file inizia con la riga @echo off |
| Sintassi dei commenti | Parola chiave REM (ufficiale) o :: (un trucco con l'etichetta a due punti ampiamente usato come commento su riga singola) |
| Sintassi delle variabili | %VARIABLE_NAME% per le variabili d'ambiente; %1-%9 per i parametri posizionali passati sulla riga di comando; %* per tutti gli argomenti |
| Costrutti di controllo di flusso | Etichette (:nome), GOTO, CALL (subroutine o script figli), IF / ELSE, cicli FOR, scoping SETLOCAL / ENDLOCAL |
| Gestione degli errori | Pseudo-variabile ERRORLEVEL; controlli IF ERRORLEVEL n; operatori di esecuzione condizionale && e || (richiede estensioni dei comandi) |
| Dimensione tipica del file | Da 100 byte a circa 50 KB - da poche righe a un lungo script di automazione |
| Formato correlato | .cmd è la controparte dell'era Windows NT; le estensioni dei comandi sono attive per impostazione predefinita, offrendo un comportamento più affidabile per ERRORLEVEL e FOR /F |
| Firma del codice | Nessun meccanismo di firma nativo - a differenza degli script PowerShell .ps1, i file .bat non possono essere firmati digitalmente o limitati da criteri di esecuzione |
| Comportamento di sicurezza all'esecuzione | Il doppio clic esegue il file immediatamente senza alcuna anteprima; i file scaricati da Internet ricevono un flag Mark-of-the-Web che attiva un avviso SmartScreen |
| Sostituito da | PowerShell (.ps1) per la moderna automazione di Windows, sebbene .bat / .cmd rimangano pienamente supportati e ampiamente utilizzati |
| Piattaforme associate | Windows (tutte le versioni), MS-DOS (origine), OS/2 (compatibilità limitata) |
| Tipo MIME | application/x-bat (riscontrato anche come application/bat, application/x-msdos-program e text/plain) |
| Rilasciato | 1981 (MS-DOS 1.0; AUTOEXEC.BAT since MS-DOS / PC DOS) |
| Ultima versione | No versioned spec; behavior tied to the cmd.exe of the Windows release (Windows 11 cmd as of 2026). .cmd is the NT-era sibling. |
| Specifica | learn.microsoft.com |
Conversioni BAT
Domande e risposte della community
chiesto dagli utentiAncora nessuna domanda - sii il primo a chiedere informazioni sui file BAT.