chuỗi lệnh Fish thông qua `&&` hoặc `||`


Câu trả lời:


13

Các toán tử logic mà bạn đã quen, được hỗ trợ kể từ cá 3.0.0, được phát hành vào năm 2018-12-28.

Từ ghi chú phát hành v3 :

  • bây giờ cá hỗ trợ &&(như and), ||(như or) và !(như not), để di chuyển tốt hơn từ các vỏ tuân thủ POSIX ( # 4620 ).

132

Cá không có cú pháp đặc biệt cho logic AND ( &&) hoặc logic OR ( ||).

Thay vào đó, bạn có thể sử dụng các lệnh andor, để xác minh trạng thái thoát của lệnh trước đó và hành động tương ứng:

command1
and command2
command1
or command2

Hơn nữa - giống như trong bash - bạn có thể sử dụng dấu chấm phẩy ;để thực hiện hai lệnh lần lượt:

command1 ; command2

Điều này cho phép sử dụng một cú pháp quen thuộc hơn:

command1 ;and command2
command1 ;or command2

Xem http://fishshell.com/docs/c hiện/tutorial.html#tut_combiners


4
Có một vấn đề github mở để thêm hỗ trợ cho cú pháp này: && không hoạt động · Vấn đề # 150 · vỏ cá / vỏ cá
aboy021

20
This allows using a more familiar syntax:rất chủ quan
Petr Peller

1
;andít đọc hơn &&là dấu chấm phẩy gợi ý thao tác tách rời logic. Đó là trực quan chói tai.
Tinh tinh hiếu chiến

@Elliott Tôi đồng ý, nhưng Cá không cho bạn lựa chọn.
Dennis

1
mặc dù lưu ý rằng trong vỏ cá và vỏ bourne, toán tử AND và OR có cùng thứ tự, không giống như các ngôn ngữ dựa trên C: unix.stackexchange.com/a/88851/50703
balupton
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.