Discuție Utilizator:Xsimio: Diferență între versiuni

De la Wiki.lug.ro
Salt la: navigare, căutare
(observatii asupra unor incorectitudini)
 
(Nu s-a afișat o versiune intermediară efectuată de același utilizator)
Linia 1: Linia 1:
===Operatii aritmetice===
 
  
Pentru efectuarea operatiilor aritmetice este folosira comanda <b>expr</b>:
 
 
<i>Sintaxa:</i>
 
 
expr argument1 operator_matematic argument2
 
 
Operatorul matematic poate fi:
 
 
<b>+</b> adunarea
 
 
<b>-</b> scaderea
 
 
<b>/</b> impartirea
 
 
<b>%</b> restul impartirii
 
 
<b>\*</b> inmultirea
 
 
Exista si alti operatori matematici insa acestia vor fi discutati mai tarziu pe parcursul acestui tutorial.
 
 
Observatii:
 
 
* inmultirea se face folosind <b>\*</b> si nu <b>*</b>
 
 
* executia comenzii <b>expr</b> 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 <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 curentă din 28 februarie 2006 12:27