|
| Regne med komma tal i bash script Fra : News |
Dato : 12-08-05 20:59 |
|
Jeg har egentligt skrevet det i en tidligere tråd, men den har ikke dette
emne, så måske er det mere relevant at starte en ny tråd.
Jeg har denne udregning i mit Bash script:
tal=$[ (10212 - 10001) / 100 ]
echo $tal
$tal BURDE give 2,11 men hvis jeg køre scriptet, skriver den kun "2" og ikke
"2.11"!? Hvordan regner man med komma tal i Bash?
| |
Kent Friis (12-08-2005)
| Kommentar Fra : Kent Friis |
Dato : 12-08-05 21:36 |
|
Den Fri, 12 Aug 2005 21:58:37 +0200 skrev News:
> Jeg har egentligt skrevet det i en tidligere tråd, men den har ikke dette
> emne, så måske er det mere relevant at starte en ny tråd.
>
> Jeg har denne udregning i mit Bash script:
>
> tal=$[ (10212 - 10001) / 100 ]
> echo $tal
>
> $tal BURDE give 2,11 men hvis jeg køre scriptet, skriver den kun "2" og ikke
> "2.11"!? Hvordan regner man med komma tal i Bash?
Samme svar - bc eller dc.
Mvh
Kent
--
Hard work may pay off in the long run, but lazyness pays off right now.
| |
News (12-08-2005)
| Kommentar Fra : News |
Dato : 12-08-05 21:48 |
|
>> $tal BURDE give 2,11 men hvis jeg køre scriptet, skriver den kun "2" og
>> ikke
>> "2.11"!? Hvordan regner man med komma tal i Bash?
>
> Samme svar - bc eller dc.
Okay, jeg har rodet lidt rundt med det og fundet frem til dette lidt
besværlige script:
tal='echo 211 / 100 | bc'.'echo 211 % 100 | bc'
echo $tal
Output = 2.11
Er der en nemmere måde?
| |
Kent Friis (12-08-2005)
| Kommentar Fra : Kent Friis |
Dato : 12-08-05 22:00 |
|
Den Fri, 12 Aug 2005 22:48:12 +0200 skrev News:
>>> $tal BURDE give 2,11 men hvis jeg køre scriptet, skriver den kun "2" og
>>> ikke
>>> "2.11"!? Hvordan regner man med komma tal i Bash?
>>
>> Samme svar - bc eller dc.
>
> Okay, jeg har rodet lidt rundt med det og fundet frem til dette lidt
> besværlige script:
>
> tal='echo 211 / 100 | bc'.'echo 211 % 100 | bc'
> echo $tal
> Output = 2.11
>
> Er der en nemmere måde?
$ echo "scale=2; 211/100" | bc
2.11
$ echo "2 k 211 100 / p" | dc
2.11
Mvh
Kent
--
Hard work may pay off in the long run, but lazyness pays off right now.
| |
News (12-08-2005)
| Kommentar Fra : News |
Dato : 12-08-05 22:06 |
|
>> tal='echo 211 / 100 | bc'.'echo 211 % 100 | bc'
>> echo $tal
>> Output = 2.11
>> Er der en nemmere måde?
>
> $ echo "scale=2; 211/100" | bc
> 2.11
> $ echo "2 k 211 100 / p" | dc
> 2.11
Ahh, okay nu forstår jeg. Tak skal du have.
| |
|
|