web-dev-qa-db-fra.com

commandes en chaîne de poisson via `&&` ou `||`

Dans Bash/ZSH et d’autres shells, j’utilise habituellement && et ||.

Y a-t-il un équivalent dans le poisson?

92
Albert

Les opérateurs logiques auxquels vous êtes habitué sont pris en charge depuis fish 3.0.0, publié le 2018-12-28.

À partir des notes de version v3 :

  • fish prend désormais en charge && (comme and), || (comme or) et ! (comme not), pour une meilleure migration depuis des shells compatibles POSIX ( # 4620 ).
13
Dennis

Fish n'a pas de syntaxe spéciale pour un ET logique (&&) ou un OR (||) logique.

À la place, vous pouvez utiliser les commandes and et or, qui vérifient l'état de sortie de la commande précédente et agissent en conséquence:

command1
and command2
command1
or command2

De plus, comme dans bash, vous pouvez utiliser un point-virgule ; pour exécuter deux commandes l'une après l'autre:

command1 ; command2

Cela permet d'utiliser une syntaxe plus familière:

command1 ;and command2
command1 ;or command2

Voir http://fishshell.com/docs/current/tutorial.html#tut_combiners

129
Dennis