File batch: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
→Esempi: più sensato Etichette: Modifica da mobile Modifica da web per mobile |
|||
(117 versioni intermedie di 78 utenti non mostrate) | |||
Riga 1:
{{F|formati di file|dicembre 2012}}
{{Formato file
| nome = File batch
| icona =
| logo =
| immagine =
| didascalia =
| estensione = .bat, .cmd
| mime =
| sviluppatore = [[Microsoft Corporation]]
| proprietario =
| licenza =
| data_pubblicazione =
| ultima_versione =
| data_ultima_versione =
| genere = [[Linguaggio di scripting]]
| estensione_di =
| esteso_a =
| standard =
| aperto =
| sito =
}}
In [[informatica]], e in particolare nella terminologia di [[MS-DOS|DOS]] e [[Microsoft Windows|Windows]], un '''file batch''' è un [[file di testo]] che contiene una sequenza di [[Riga di comando|comandi]] per l'[[Shell (informatica)|interprete di comandi]] del sistema, solitamente [[command.com]] o [[cmd.exe]].
== Introduzione ==
Il file batch viene eseguito dall'interprete dei comandi mandando in [[esecuzione (informatica)|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 [[Script|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: <code>if</code>, <code>for</code> e <code>goto</code>.
I comandi batch di [[MS-DOS]] devono avere [[Estensione (file)|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'[[boot|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'',
* ''comandi esterni'',
=== Comandi interni ===
I comandi interni sono sempre disponibili senza accedere al disco perché integrati all'interno dell'interprete dei comandi.
Ecco alcuni comandi interni:
* <code>dir</code>
* <code>call</code>
* <code>chcp</code>
* <code>ren</code> o <code>rename</code>
* <code>del</code> o <code>erase</code>
* <code>type</code>
* <code>rem</code>
* <code>copy</code>
* <code>pause</code>
* <code>date</code>
* <code>time</code>
* <code>ver</code>
* <code>vol</code>
* <code>cd</code> o <code>chdir</code>
* <code>md</code> o <code>mkdir</code>
* <code>rd</code> o <code>rmdir</code>
* <code>break</code>
* <code>verify</code>
* <code>set</code>
* <code>prompt</code>
* <code>path</code>
* <code>exit</code>
* <code>echo</code>
* <code>goto</code>
* <code>shift</code>
* <code>if</code>
* <code>for</code>
* <code>cls</code>
* <code>lh</code> o <code>loadhigh</code>
Alcuni comandi interni introdotti con [[Windows 95]]:
* <code>start</code>
* <code>lfnfor</code>
* <code>truename</code>
* <code>lock</code>
* <code>unlock</code>
=== Comandi esterni ===
I comandi esterni sono file di estensione [[Eseguibile EXE|.exe]], [[Eseguibile COM|.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:
* <code>robocopy.exe</code>
* <code>diskcopy.com</code>
* <code>edit.com</code>
* <code>mode.com</code>
* <code>more.com</code>
* <code>sys.com</code>
* <code>attrib.exe</code>
* <code>chkdsk.exe</code>
* <code>debug.exe</code>
* <code>deltree.exe</code>
* <code>fc.exe</code>
* <code>find.exe</code>
* <code>label.exe</code>
* <code>mem.exe</code>
* <code>move.exe</code>
* <code>net.exe</code>
* <code>nlsfunc.exe</code>
* <code>shutdown.exe</code>
* <code>sort.exe</code>
* <code>subst.exe</code>
* <code>xcopy.exe</code>
* <code>xcopy32.exe</code>
Per avere informazioni su questi comandi, digitare da [[cmd.exe]] il comando stesso seguito da ''/?'', per esempio: <code>xcopy /?</code>
== Esempi ==
* [[Hello
<
@echo Hello
pause
</syntaxhighlight>
* Effetto Matrix
<syntaxhighlight lang="dos">
@echo off
color 02
:SCROLLR
echo %random% %random% %random% %random%
goto SCROLLR
</syntaxhighlight>
* spegnimento computer dopo 30 secondi
<syntaxhighlight lang="dos">
shutdown -s
</syntaxhighlight>
* Creazione di un menù
<syntaxhighlight lang="dos">
@echo off
title Opinione su Wikipedia
cls
color 9E
:RICHIESTA
echo.
echo
echo
echo
echo 3. Esci
echo.
set /p "Scelta=Scegli un'opzione e premi il tasto Invio: "
cls
IF "%Scelta%"==
IF
IF
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
: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
</syntaxhighlight>
== Voci correlate ==
* [[
* [[Batch processing]]
== Collegamenti esterni ==
* {{FOLDOC|batch file|batch file}}
* {{cita web|lingua=en|url=https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-xp/bb490869(v%3dtechnet.10)|titolo=Using batch files|editore=[[Microsoft]]|data=11 settembre 2009}}
{{portale|informatica|microsoft}}
Riga 140 ⟶ 194:
[[Categoria:Linguaggi di scripting]]
[[Categoria:Terminologia informatica]]
|