2012-06-19 40 views
6

Liệu PowerShell đã tương đương với lệnh này xây dựng từ sh (và các dẫn xuất):lệnh Chain trong dòng lệnh PowerShell

$ cmd1 && cmd2 

nơi cmd2 chỉ chạy khi cmd1 thoát thành công? Tôi biết bạn có thể kết hợp các lệnh với dấu chấm phẩy tuy nhiên điều này sẽ bỏ qua trạng thái thoát của lệnh.

+1

thể trùng lặp của (http://stackoverflow.com/questions/563600/ can-i-get-to-work-in-powershell) – EBGreen

+0

có thể trùng lặp của [thực thi có điều kiện (&& và ||) trong PowerShell] (http://stackoverflow.com/questions/2251622/conditional-execution-and-in -powershell) –

Trả lời

3

Không có tương tự trực tiếp với & & hoặc ||. Có một số cuộc thảo luận về lựa chọn thay thế mặc dù. Dưới đây là một ví dụ:

conditional execution (&& and ||) in powershell

+1

Tôi nhận ra sự ngớ ngẩn khi nói "đây là cùng một câu hỏi đã được trả lời" khi tôi đăng câu trả lời này. Tôi đã bỏ phiếu để đóng câu hỏi này. – EBGreen

+0

Trang này phục vụ một mục đích; khi tìm kiếm "chuỗi lệnh powershell" bạn nhận được ở đây. Vì vậy, bạn có thể theo liên kết của bạn đến câu trả lời thực sự. – andersand

4

Hãy thử điều này: [? Tôi có thể nhận && để làm việc trong Powershell]

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

Nếu lệnh đầu tiên không thành công với phương pháp này, lệnh tiếp theo sẽ vẫn được thực hiện. –

+0

Không giao phối, $ errorActionPreference = 'Stop' làm cho nó dừng việc thực hiện trên lỗi đầu tiên. Hãy thử chạy sau đây có và không có thiết lập biến này> $ errorActionPreference = 'Stop'; dir NON_EXISTENT; Viết-Host "cuối mã" – Ivan