Come in tutti i linguaggi di programmazione che si rispettano anche nel batch ci sono le istruzioni di controllo, mentre però in C++, PHP, Bash... questi permettono di compiere molto lavoro con poca difficoltà in batch è differente.
I comandi sono: "if", "for" e "goto".
I primi due sono molto comuni, l'istruzione condizionale IF permette di chiedere al programma di stabilire un confronto o una situazione che al suo avvenimento deve essere susseguita da altre istruzioni. Una specifica, in batch non esiste il comando "else" o "then" che permette di dire "se succede A prosegui con il programma normale, altrimenti fai un'altra operazione", no il batch non lo sopporta.
L'istruzione FOR invece si riferisce ad una ripetizione di una parte del programma per tante volte quante gli è stato chiesto di fare.
L'istruzione GOTO, il famoso "salta a", è l'istruzione più pericolosa perché se non si stà attenti si può creare un virus, cioé un programma che va in "loop" e continua a venir processato dal Sistema Operativo bloccando ogni altra operazione.
Per esempio si può creare un programma che spenga il computer ad ogni avvio, non vi sarà più possibile accedere a Windows così.
A parte questi inconvenienti che possono essere comunque controllati devo avvertirvi che il comando GOTO può avviare qualsiasi istruzione basta fare attenzione che poi non vengano scritte nuove istruzioni.
Riprendiamo il file creato attraverso la procedura spiegata nel precedente post:
<
cls
rem Il comando CLS serve a cancellare ogni scritta precedente sul prompt
@echo off
rem QUESTO E` IL MIO PRIMO FILE BATCH
rem Ora creiamo il nostro programma con if e goto
rem Stabiliamo il valore di alcune variabili
echo.*************************************
echo.* Primo programma di prova *
echo.*************************************
rem Ora diamo le istruzioni da seguire
echo. Premi 1 per salutare, 2 per dire addio, 3 per uscire.
set /p val_1= Inserisci il valore desiderato:
rem Usando il SET /P possiamo creare una variabile a cui verrà dato un valore da tastiera
if %val_1%==1 goto saluta
if %val_1%==2 goto addio
if %val_1%==3 goto eof
rem Abbiamo inserito tre IF che il programma scieglierà a seconda del valore di "val_1"
rem Le scritte dopo GOTO indicano la parte di programma alla quale deve andare
rem Con "eof" si intende "end of file"
:saluta
echo. Buongiorno caro %username%!
goto eof
rem Il GOTO alla fine serve perché altrimenti il programma eseguirebbe anche a parte seguente di codice
:addio
echo. Addio caro %username%!
goto eof
:eof
echo. Grazie per aver uilizzato la mia applicazione!
pause
rem Il comando PAUSE ferma il programma fino alla pressione di un tasto qualsiasi
exit
rem Il comando EXIT serve per uscire dal dal Prompt dei comandi
Vai alla Lezione Precedente
Vai alla Lezione Successiva
Alla prossima lezione.
Continua...
Nessun commento:
Posta un commento