Відповіді:
Логічні оператори, до яких ви звикли, підтримуються, оскільки риба 3.0.0, випущена 2018-12-28.
- тепер риба підтримує
&&
(якand
),||
(якor
) і!
(подібнеnot
) для кращої міграції з сумісних з POSIX оболонок ( # 4620 ).
У риб немає спеціального синтаксису для логічного AND ( &&
) або логічного OR ( ||
).
Натомість ви можете використовувати команди and
та or
, які перевіряють стан виходу попередньої команди та діють відповідно:
command1
and command2
command1
or command2
Крім того, як і в bash, ви можете використовувати крапку ;
з комою для виконання двох команд одна за одною:
command1 ; command2
Це дозволяє використовувати більш звичний синтаксис:
command1 ;and command2
command1 ;or command2
Дивіться http://fishshell.com/docs/current/tutorial.html#tut_combiners
This allows using a more familiar syntax:
дуже суб’єктивно
;and
є менш читабельним, ніж те &&
, що крапка з комою передбачає логічно непересічну операцію. Це візуально бадьорить.