Discuție Utilizator:Xsimio: Diferență între versiuni
De la Wiki.lug.ro
(→Operatii aritmetice) |
Petre (Discuție | contribuții) (observatii asupra unor incorectitudini) |
||
| Linia 32: | Linia 32: | ||
Trebuie mentionat ca intotdeauna folosirea ghilimelelor inclinate are ca efect executia comenzii shell care se afla intre acestea si folosirea in script a rezultatului obtinut prin executarea comenzii respective. Acest lucru este universal valabil in programarea shell, nu numai in cazul comenzii <b>expr</b>. | Trebuie mentionat ca intotdeauna folosirea ghilimelelor inclinate are ca efect executia comenzii shell care se afla intre acestea si folosirea in script a rezultatului obtinut prin executarea comenzii respective. Acest lucru este universal valabil in programarea shell, nu numai in cazul comenzii <b>expr</b>. | ||
| + | |||
| + | |||
| + | |||
| + | ==Observatii== | ||
| + | * inmultirea se face folosind * , nu \* , backslashul e necesar uneori pt. a feri asteriskul de shell (vezi mai jos) | ||
| + | * backtickurile n-au nici o treaba cu expr | ||
| + | * expr e foarte greoi comparativ cu arithmetic evaluation din bash | ||
| + | |||
| + | =exemple= | ||
| + | |||
| + | $ expr 2 + 3 # fara ` sau echo | ||
| + | 5 | ||
| + | $ set -f ; expr 2 * 3 # shell fara pathname expansion, no \* required, no backticks either | ||
| + | 6 | ||
| + | $ echo $[((2*2)**2+2*2+2/2)<<2/2] # eat that, expr! | ||
| + | 42 | ||
| + | |||
| + | see? :) | ||
| + | [[Utilizator:Petre|Petre]] 20 Feb 2006 04:34 (EET) | ||
Versiunea de la data 20 februarie 2006 05:34
Operatii aritmetice
Pentru efectuarea operatiilor aritmetice este folosira comanda expr:
Sintaxa: expr argument1 operator_matematic argument2
Operatorul matematic poate fi:
+ adunarea
- scaderea
/ impartirea
% restul impartirii
\* inmultirea
Exista si alti operatori matematici insa acestia vor fi discutati mai tarziu pe parcursul acestui tutorial.
Observatii:
- inmultirea se face folosind \* si nu *
- executia comenzii expr se face folod\sind ghilimele inclinate, si nu ghilimele simple si nici duble; urmatoarele exemple sper sa va lamureasca in legatura cu folosirea ghilimelelor pentru executia comenzilor:
#echo "expr 4 + 5" #echo 'expr 4 + 5' #echo `expr 4 + 5`
Trebuie mentionat ca intotdeauna folosirea ghilimelelor inclinate are ca efect executia comenzii shell care se afla intre acestea si folosirea in script a rezultatului obtinut prin executarea comenzii respective. Acest lucru este universal valabil in programarea shell, nu numai in cazul comenzii expr.
Observatii
- inmultirea se face folosind * , nu \* , backslashul e necesar uneori pt. a feri asteriskul de shell (vezi mai jos)
- backtickurile n-au nici o treaba cu expr
- expr e foarte greoi comparativ cu arithmetic evaluation din bash
exemple
$ expr 2 + 3 # fara ` sau echo 5 $ set -f ; expr 2 * 3 # shell fara pathname expansion, no \* required, no backticks either 6 $ echo $[((2*2)**2+2*2+2/2)<<2/2] # eat that, expr! 42
see? :) Petre 20 Feb 2006 04:34 (EET)