Timeline
Chat
Prospettiva
File batch
linguaggio di programmazione Da Wikipedia, l'enciclopedia libera
Remove ads
In informatica, e in particolare nella terminologia di DOS e Windows, un file batch è un file di testo che contiene una sequenza di comandi per l'interprete di comandi del sistema, solitamente command.com o cmd.exe.
Remove ads
Introduzione
Riepilogo
Prospettiva
Il file batch viene eseguito dall'interprete dei comandi mandando in esecuzione i comandi elencati nel file uno dopo l'altro, nello stesso ordine in cui compaiono nel file. Il concetto di file batch è analogo a quello di shell script per i sistemi Unix e infatti può essere considerato un rudimentale linguaggio di scripting, anche se i costrutti di controllo di flusso a disposizione sono veramente pochi: if, for e goto.
I file batch di MS-DOS devono avere estensione .bat per essere riconosciuti come tali dal sistema operativo, mentre i sistemi NT (Windows NT/2000/XP/Vista/7 e successivi) accettano anche l'estensione .cmd.
Un particolare e noto file batch è AUTOEXEC.BAT perché viene eseguito automaticamente all'avvio di tutti i sistemi operativi basati su MS-DOS.
I comandi utilizzabili sono tutti quelli disponibili per il prompt di sistema e si dividono in due categorie:
- comandi interni, come
cdper cambiare la cartella di lavoro odirper elencarne il contenuto. Alcuni di essi sono specifici proprio per i file batch, avendo ben poco o nessun senso se utilizzati direttamente dal prompt dei comandi per un singolo comando. - comandi esterni, come
formatochkdsk.
Comandi interni
I comandi interni sono sempre disponibili senza accedere al disco perché integrati all'interno dell'interprete dei comandi.
Ecco alcuni comandi interni:
dircallchcprenorenamedeloerasetyperemcopypausedatetimevervolcdochdirmdomkdirrdormdirbreakverifysetpromptpathexitechogotoshiftifforclslholoadhigh
Alcuni comandi interni introdotti con Windows 95:
startlfnfortruenamelockunlock
Comandi esterni
I comandi esterni sono file di estensione .exe, .com o gli stessi file con estensione .bat o .cmd, che possono essere usati come comandi e chiamati (senza bisogno di scrivere l'estensione: scrivere diskcopy o diskcopy.com dà lo stesso risultato; esiste comunque una precedenza nel caso di file con nomi uguali ma estensioni diverse).
Ecco alcuni comandi esterni:
robocopy.exediskcopy.comedit.commode.commore.comsys.comattrib.exechkdsk.exedebug.exedeltree.exefc.exefind.exelabel.exemem.exemove.exenet.exenlsfunc.exeshutdown.exesort.exesubst.exexcopy.exexcopy32.exe
Per avere informazioni su questi comandi, digitare da cmd.exe il comando stesso seguito da /?, per esempio: xcopy /?
Remove ads
Esempi
- Hello world: stampa a video della scritta "Hello world!"
@echo Hello world!
pause
- Effetto Matrix
@echo off
color 02
:SCROLLR
echo %random% %random% %random% %random%
goto SCROLLR
- spegnimento computer dopo 30 secondi
shutdown -s
- Creazione di un menù
@echo off
title Opinione su Wikipedia
cls
color 9E
:RICHIESTA
echo.
echo Che cosa pensi di Wikipedia?
echo 1. Grandiosa.
echo 2. Così così.
echo 3. Esci
echo.
set /p "Scelta=Scegli un'opzione e premi il tasto Invio: "
cls
IF "%Scelta%"=="1" GOTO UNO
IF "%Scelta%"=="2" GOTO DUE
IF "%Scelta%"=="3" GOTO TRE
color CF
echo.
echo Scelta non valida: premi un tasto compreso tra 1 e 3.
echo.
echo Premi un tasto per continuare...
pause > nul
cls
color 9E
goto RICHIESTA
:UNO
echo.
echo Anche per me!
goto TRE
:DUE
echo.
echo Prova a dare un'occhiata ai progetti analoghi a questo indirizzo:
echo http://it.wikipedia.org/wiki/Wikimedia_Foundation#Progetti
echo.
echo Premi un tasto per aprire Wikipedia...
pause > nul
cls
echo.
echo Apertura di Wikipedia in corso...
start http://it.wikipedia.org/wiki/Wikimedia_Foundation#Progetti
cls
:TRE
echo.
echo Ciao.
echo.
echo Premi un tasto per uscire...
pause > nul
exit /b
Remove ads
Voci correlate
Collegamenti esterni
- (EN) Denis Howe, batch file, in Free On-line Dictionary of Computing. Disponibile con licenza GFDL
- (EN) Using batch files, su learn.microsoft.com, Microsoft, 11 settembre 2009.
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads

