GNU/Linux >> Znalost Linux >  >> Linux

Závorka v aritmetice výrazu:3 * (2 + 1)?

expr Zdá se, že nemá rád závorky (používané v matematice k explicitní prioritě operátorů):

expr 3 * (2 + 1)
bash: syntax error near unexpected token `('

Jak vyjádřit prioritu operátora v bash?

Přijatá odpověď:

Další způsob použití let vestavěný bash:

$ let a="3 * (2 + 1)"
$ printf '%s\n' "$a"
9

Poznámka

Jak zdůraznil @Stéphane Chazelas, v bash měli byste použít ((...)) dělat aritmetiku přes expr nebo let kvůli čitelnosti.

Pro přenositelnost použijte $((...)) jako odpověď @Bernhard.


Linux
  1. BASH:jak provádět aritmetiku na číslech v rouře

  2. Spusťte příkaz bash na jenkins pipeline

  3. Aritmetický výraz v přesměrování

  1. 5 užitečných způsobů, jak provádět aritmetiku v terminálu Linux

  2. Použít $[ Expr ] místo $(( Expr ))?

  3. Jednoduchá závorka v přiřazení proměnné Bash?

  1. Proměnná exportu Bash

  2. Vysvětlení matematických operací Bash (aritmetika Bash).

  3. Bash čeká příkaz