2012-06-19 11 views
6

Vuol powershell hanno un equivalente a questo comando costruire da sh (e derivati):comandi Chain a linea di comando powershell

$ cmd1 && cmd2 

dove cmd2 viene eseguito solo quando cmd1 uscite con successo? So che puoi combinare i comandi con un punto e virgola, tuttavia questo non tiene conto dello stato di uscita dei comandi.

+1

possibile duplicato (http://stackoverflow.com/questions/563600/ can-i-get-to-work-in-powershell) – EBGreen

+0

possibile duplicato di [esecuzione condizionale (&& e ||) in powershell] (http://stackoverflow.com/questions/2251622/conditional-execution-and-in -powershell) –

risposta

3

Non esiste un analogico diretto a & & o ||. Ci sono diverse discussioni sulle alternative però. Ecco un esempio:

conditional execution (&& and ||) in powershell

+1

Mi sono reso conto della stupidità nel dire "ecco la stessa domanda già risposta" quando ho postato questa risposta. Ho votato per chiudere questa domanda. – EBGreen

+0

Questa pagina ha uno scopo; quando si cerca "comandi a catena powershell" si arriva qui. Quindi puoi seguire il tuo link alla vera risposta. – andersand

4

Prova questo: [? Posso ottenere && a lavorare in PowerShell]

$errorActionPreference='Stop'; cmd1; cmd2 
+0

Se il primo comando fallisce con questo approccio, il prossimo sarà ancora eseguito. –

+0

Nessun accoppiamento, $ errorActionPreference = 'Stop' fa interrompere l'esecuzione al primo errore. Prova a eseguire quanto segue con e senza impostare questa variabile> $ errorActionPreference = 'Stop'; dir NON_EXISTENT; Scrivi-Host "fine del codice" – Ivan

Problemi correlati