Il comando: "CALL" è attivo Windows 12, 11, 10, .. , MS Server 2025, 2022, 2019, .. disponibile
Gli esempi per il comando "CALL"
IL
`CALL`Il comando nel prompt dei comandi di Windows viene utilizzato per avviare l'esecuzione di un altro script batch all'interno di uno script batch. Ecco alcuni esempi con commenti:
Esempio 1: semplice chiamata a un altro script batch:
CALL altro_sceneggiatura.bat
Descrizione: Questo comando richiama lo script batch
`altro_sceneggiatura.bat`SU. IL
`CALL`Il comando viene utilizzato per garantire che il controllo ritorni allo script originale una volta completato lo script chiamato.
Esempio 2: passaggio di parametri allo script chiamato:
CALL altro_sceneggiatura.bat Parameter1 Parameter2
Descrizione: I parametri sono qui
`Parameter1`E
`Parameter2`passato allo script batch chiamato. Entro
`altro_sceneggiatura.bat`può utilizzare questi parametri
`%1`,
`%2`, ecc. possono essere recuperati.
Esempio 3: Utilizzo di`%*`per tutti i parametri passati:
CALL altro_sceneggiatura.bat %*
Descrizione:*`%`rappresenta tutti i parametri passati. Questo comando chiama
`altro_sceneggiatura.bat`e gli passa tutti i parametri passati allo script originale.
Esempio 4: controlla il valore restituito dallo script richiamato:
CALL altro_sceneggiatura.bat
IF ERRORLEVEL 1 (
ECHO Lo script chiamato ha restituito un errore.
) ELSE (
ECHO Lo script richiamato è stato eseguito correttamente.
)
Descrizione: Lo script batch richiamato è qui
`altro_sceneggiatura.bat`eseguito. Poi con
`ERRORLEVEL`controlla se lo script ha restituito un errore.
Esempio 5: Utilizzo di`GOTO`dopo la chiamata:
CALL altro_sceneggiatura.bat
GOTO Continua
:Continua
ECHO Lo script è stato chiamato con successo.
Descrizione: Ecco lo script batch
`altro_sceneggiatura.bat`chiamato e, dopo la chiamata, l'esecuzione diventa l'etichetta di salto
`Continua`inoltrato.
IL
`CALL`Il comando è particolarmente utile quando si desidera richiamare un altro script da uno script batch e assicurarsi che l'esecuzione ritorni allo script originale. Questo è importante per continuare lo script originale dopo aver chiamato l'altro script.
"CALL" Estratto dalla guida di Microsoft Windows
Microsoft Windows [Version 10.0.19045.3693]
(c) Copyright 1985-2023 Microsoft Corp.
C:\\WINDOWS>
Richiama un programma batch da un altro programma batch.
CALL [unità:][percorso]nomefile [parametri-batch]
parametri-batch Specificano informazioni richieste alla riga di
comando per il programma batch.
Se le estensioni di comando sono abilitate CALL è cambiato come segue:
il comando CALL può essere seguito da etichette. La sintassi è:
CALL :etichetta argomenti
Viene creato un nuovo contesto di file batch con i parametri
specificati,
quindi il controllo viene passato al comando che segue l'etichetta
specificata.
Per terminare l'esecuzione del file batch occorre raggiungere due volte
la fine
del file batch: la prima volta viene rilevata la fine del file e viene
restituito il controllo all'istruzione successiva al comando CALL, la
seconda
volta si uscirà dal file batch. Digitare GOTO /? per la descrizione
dell'estensione GOTO :EOF che consente di "ritornare" in seguito a una
chiamata
a un file batch.
Inoltre l'espansione dei riferimenti agli argomenti di un file batch
(%0,
%1, etc.) è cambiata come segue:
%* in un file batch si riferisce a tutti gli argomenti. Esempio: %1
%2
%3 %4 %5 ...
La sostituzione dei parametri (%n) è stata migliorata. Ora, se
si desidera, è possibile utilizzare la seguente sintassi:
%~1 - sostituisce %1 rimuovendo il carattere "
%~f1 - sostituisce %1 con il percorso completo
%~d1 - sostituisce %1 solo con la lettera di unità
%~p1 - sostituisce %1 solo con il percorso
%~n1 - sostituisce %1 solo con il nome del file
%~x1 - sostituisce %1 solo con l'estensione del file
%~s1 - il percorso inserito contiene solo nomi corti
%~a1 - sostituisce %1 con l'attributo del file
%~t1 - sostituisce %1 con la data/ora del file
%~z1 - sostituisce %1 con la dimensione del file
%~$PATH:1 - cerca le directory che compaiono nella variabile
di ambiente PATH e sostituisce %1 con il
percorso
completo della prima directory trovata.
Se il nome della variabile di ambiente non
è definito o il file non è trovato
il modificatore prevede la sostituzione con una
stringa vuota
È possibile combinare i modificatori ed ottenere risultati
composti:
%~dp1 - sostituisce %1 solo con la lettera di unità e
il percorso
%~nx1 - sostituisce %1 solo con il nome del file e
l'estensione
%~dp$PATH:1 - cerca le directory che compaiono nella
variabile
di ambiente PATH e sostituisce %1 con lettera
di
unità della prima directory trovata
%~ftza1 - sostituisce %1 con una riga di output simile
a DIR
Negli esempi precedenti, %1 e PATH possono essere sostituiti con
altri valori validi. La sintassi %~ è terminata con un numero di
argomento valido. I modificatori %~ non possono essere utilizzati con
%*
Informazioni importanti, suggerimenti per il comando "CALL"
Sì, ci sono alcuni punti e considerazioni importanti che dovresti tenere a mente quando crei il file
`CALL`comando nel prompt dei comandi di Windows:
1.
Utilizzare con script batch: The
`CALL`Il comando viene in genere utilizzato per richiamare un altro script batch all'interno di uno script batch. Tieni presente che potrebbe non essere necessario quando si eseguono altri tipi di file.
2.
Controlla il valore restituito: Se lo script batch chiamato restituisce un valore restituito, puoi farlo con
`ERRORLEVEL`controllo. Notare che
`ERRORLEVEL`riflette solo il valore restituito dell'ultimo comando eseguito.
CALL altro_sceneggiatura.bat
IF ERRORLEVEL 1 (
ECHO Lo script chiamato ha restituito un errore.
) ELSE (
ECHO Lo script richiamato è stato eseguito correttamente.
)
3.
Uso corretto dei parametri: prestare attenzione all'uso corretto dei parametri quando si passano i parametri allo script batch chiamato. I parametri possono essere utilizzati nello script richiamato
`%1`,
`%2`, ecc. possono essere recuperati.
CALL altro_sceneggiatura.bat Parameter1 Parameter2
4.
Sintassi e spazi: assicurati che la sintassi sia corretta e che non siano presenti spazi non necessari. Ciò può portare a errori.
5.
Considerazioni sulla sicurezza: Durante l'utilizzo
`CALL`Negli script che contengono parametri, è importante garantire che i parametri passati siano convalidati ed elaborati correttamente per ridurre al minimo i rischi per la sicurezza.
6.
Monitoraggio e registrazione: quando si sviluppano script batch che richiamano altri script, è spesso consigliabile utilizzare metodi di monitoraggio e registrazione per monitorare l'esecuzione e i possibili errori.
7.
Evita cicli infiniti: fai attenzione a non creare accidentalmente cicli infiniti richiamando script batch in un ciclo. Ciò potrebbe comportare che gli script si richiamino ripetutamente.
8.
Differenze specifiche della versione: Tieni presente che la funzionalità di
`CALL`il comando può variare a seconda della versione di Windows. Si consiglia di consultare la documentazione della propria versione specifica di Windows.
Tenere conto di queste considerazioni per garantire l'utilizzo di
`CALL`in modo corretto e sicuro nei tuoi script batch.