• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[solved] rechnen mit ohne expr!!!!

hallo,
wie kann ich in linux ohne expr rechnen.

habe z.b. ein wert

Code:
x=100

jetzt möchte ich x+10 rechnen. mit expr würde das ja so gehen

Code:
x=100
y=`expr ($x + 10)`

aber geht das auch ohne expr?
weil bei mir ist expr nicht installiert.
wenn es installiert wäre,dann wäre es unter
Code:
/usr/man/man1/expr
zu finden sein. (benutze eine Solarismaschine 5.9)


expr ist bei mir nur unter
Code:
/usr/bin/expr
/usr/xpg4/bin/expr
zu finden.

geht das oder bin ich da auf expr angewiesen?
mfg

danke
 
So gehts zwar schon ist aber unter aller sau. vlt.hilfts dir dennoch.

x=100
y=`echo "$x + 10"|bc`

Hoffe, dass jemand ne bessere Lösung hat, ich such nämlich auch
 
noob222 schrieb:
weil bei mir ist expr nicht installiert.
wenn es installiert wäre,dann wäre es unter
Code:
/usr/man/man1/expr
zu finden sein. (benutze eine Solarismaschine 5.9)
Sorry ... aber da liegen doch eh nur die Man-Pages.
 
richtig. aber bei mir ist ja gerade keine manpage zu expr zu finden.

weil:

Code:
man expr 
No manual entry for expr.

und deswegen kann ich auch mti expr nicht arbeiten, weil ich dann die Fehlermeldung bekomme, das expr kein gültiger Befehl sei.

@Leviathan

was bedeutet dieses "bc"?
es klappt zwar, aber würde schon gerne wisswen, wo zu das gut ist :)
 
Warum nehmt ihr nicht das Shell.builtin "let ..."

x=100 ; let a=x+10 ; echo $a
110

Klammern könnt ihr mit Klammern, z.B. let "a=(10+5)*3" nutzen.
Bitshift, Or, and,... alles ist schon "built in" bei ksh und bash.

Haveaniceday
Edit: $((...)) geht natürlich auch zum Rechnen:

x=100 ; a=$((x+10)) ; echo $a
110

Edit2: ksh ist auch auf der Solaris per default zu finden. bash: Hmm, hängt vom Admin ab.
 
Der Anfang von man expr sieht bei mir(Solaris 5.10) wiefolgt aus.:
Code:
User Commands                                             expr(1)

NAME
     expr - evaluate arguments as an expression

SYNOPSIS
     /usr/bin/expr argument...

     /usr/xpg4/bin/expr argument...

     /usr/xpg6/bin/expr argument...

DESCRIPTION
  /usr/bin/expr, /usr/xpg4/bin/expr
     The expr utility evaluates the  expression  and  writes  the
     result  to  standard  output.  The character 0 is written to
     indicate a zero value and nothing is written to  indicate  a
     null string.

  /usr/xpg6/bin/expr
     The expr utility evaluates the  expression  and  writes  the

Aber eines ist komisch: Das ich eine man-Datei habe, und du nicht.
Code:
$ ls -l /usr/share/man/man1/expr*
-rw-r--r--   1 root     root        8411 Dec 22  2004 /usr/share/man/man1/expr.1
 
Leviathan schrieb:
man bc

scnr :>>

bc ist ein Rechner für die Bash. In der Manual sind auch Beispiele (kann sehr komplex sein)
Naja, ob bash oder nicht ist bei bc erstmal egal. Bei Solaris ist nämlich eher die jsh standard...

Sollte aber auch mit der jsh funktionieren. Hier ein abgewandeltes Beispiel aus der manpage auf Solaris 5.10
Code:
$ x=`echo 'scale = 10; 104348/33215' | bc`
$ echo $x
3.1415926539
$
 
Oben