Wolfgang Klein
2017-09-02 18:22:32 UTC
Moin!
Ich versuche, in einer Bash die Anzahl der Stellen einer Zahl zu
bestimmen. Da gibt es doch den Logarithmus zur Basis 10 und dachte
eigentlich, daß
echo "scale=0;l($zahl)/l(10)" | bc -l
das Gewünschte ausspuckt. Aber weit gefehlt, denn:
echo "scale=0;l(10)/l(10)" | bc -l
1
echo "scale=0;l(77)/l(10)" | bc -l
2
echo "scale=0;l(999)/l(10)" | bc -l
3
echo "scale=0;l(177)/l(10)" | bc -l
2
Die ersten beiden Ergebnisse müssten jeweils 2 lauten, die letzten
beiden jeweils 3.
Wie kriege ich das gesuchte Ergebnis?
Wolfgang
Ich versuche, in einer Bash die Anzahl der Stellen einer Zahl zu
bestimmen. Da gibt es doch den Logarithmus zur Basis 10 und dachte
eigentlich, daß
echo "scale=0;l($zahl)/l(10)" | bc -l
das Gewünschte ausspuckt. Aber weit gefehlt, denn:
echo "scale=0;l(10)/l(10)" | bc -l
1
echo "scale=0;l(77)/l(10)" | bc -l
2
echo "scale=0;l(999)/l(10)" | bc -l
3
echo "scale=0;l(177)/l(10)" | bc -l
2
Die ersten beiden Ergebnisse müssten jeweils 2 lauten, die letzten
beiden jeweils 3.
Wie kriege ich das gesuchte Ergebnis?
Wolfgang