Ciao a tutti, spesso mi capita di eseguire dei comandi inanellati molto semplici da cmd. Per evitare di dover scriverli ogni volta a mano, uso l'operatore logico booleano del doppio and && per eseguire comandi a cascata. Su cmd, il suddetto operatore mi permette di eseguire il comando successivo SE E SOLO SE, quello precedente sia andato a buon fine. Mi capita di usarlo per esempio con comandi come questo:
O, nel caso di assistenza remota, questo mi risulta sempre ottimo
Poiché, se eseguissi solo il primo e perdessi la connessione sarebbero dolori, allora una volta eseguito il secondo comando riprende il tutto e io son felice di continuare a dare assistenza.
Ora, però, dovevo eseguire un comando per il ping di una serie di dispositivi presenti qui in biblioteca con un comando del tipo
eccetera
Purtroppo, se l'host non viene trovato (generando in output Impossibile trovare l'host HOST1. Verificare che il nome sia corretto e riprovare.) e il ping scade, quello viene visto come comando non andato a buon fine e lo script (se così si può chiamare) non prosegue.
Come posso risolvere? Come posso fare in modo che un comando venga eseguito dopo un altro che non è "andato a buon fine"?
PS: un altro esempio è quando eseguo un
e il comando non riesce ad aggiornare le policy, il resto dello script non continua
Grazie mille per le vostre risposte
NB: non posso eseguire scansioni di rete e comunque mi interessa come sintassi in generale. Grazie!
Codice:
sfc /scannow && dism /Online /Cleanup-Image /CheckHealth && dism /Online /Cleanup-Image /ScanHealth && dism /Online /Cleanup-Image /RestoreHealth
O, nel caso di assistenza remota, questo mi risulta sempre ottimo
Codice:
ipconfig /release && ipconfig /renew
Poiché, se eseguissi solo il primo e perdessi la connessione sarebbero dolori, allora una volta eseguito il secondo comando riprende il tutto e io son felice di continuare a dare assistenza.
Ora, però, dovevo eseguire un comando per il ping di una serie di dispositivi presenti qui in biblioteca con un comando del tipo
Codice:
ping HOST1 && ping HOST2 && ping HOST3
Purtroppo, se l'host non viene trovato (generando in output Impossibile trovare l'host HOST1. Verificare che il nome sia corretto e riprovare.) e il ping scade, quello viene visto come comando non andato a buon fine e lo script (se così si può chiamare) non prosegue.
Come posso risolvere? Come posso fare in modo che un comando venga eseguito dopo un altro che non è "andato a buon fine"?
PS: un altro esempio è quando eseguo un
Codice:
gpupdate /force
Grazie mille per le vostre risposte
NB: non posso eseguire scansioni di rete e comunque mi interessa come sintassi in generale. Grazie!