Uruchom drugie polecenie po pierwszym zakończeniu lub błędach

17

Wiem, że możesz uruchamiać dwa polecenia w jednym wierszu, umieszczając &&między nimi w ten sposób:

hostname && w32tm /query /configuration

Ta &&funkcja ma jednak ograniczenie: wykonuje drugie polecenie tylko wtedy, gdy pierwsze zakończy się powodzeniem.

Moim preferowanym zastosowaniem &&jest uruchamianie poleceń informacyjnych bezpośrednio z Start-> Uruchom (lub Win+ R) bez konieczności wpisywania ich w oknie CMD lub martwienia się o przedwczesne wyjście konsoli CMD. Na przykład:

cmd /c hostname && w32tm /query /configuration && pause

Jednak z powodu wspomnianego ograniczenia to polecenie automatycznie zamknie okno konsoli, jeśli w32tm zawiedzie - tzn .: jeśli usługa Czas systemu Windows nie jest uruchomiona.

Czy istnieje podobny operator, którego można użyć do ciągnięcia poleceń razem w jednym wierszu, co pozwoli na uruchomienie drugiego polecenia, nawet jeśli wystąpią pierwsze błędy?

Szukam tego, aby był zgodny z systemem Windows XP w górę.

Iszi
źródło

Odpowiedzi:

23

Po prostu użyj &zamiast &&. Drugie polecenie zostanie wykonane, nawet jeśli pierwsze nie powiedzie się.

Gurken Papst
źródło
2
co jeśli chcę command2być wykonywany tylko w razie command1niepowodzenia? (XOR)
AK_
Następnie użyjcommand1 || command2
Chad Gorshing