Nowe posty

Autor Wątek: Bash Porównanie 2 liczb  (Przeczytany 13034 razy)

le3o

  • Gość
Bash Porównanie 2 liczb
« dnia: 2011-05-20, 11:56:11 »
Wie ktoś może co jest źle ?

]#!/bin/bash
if [ `echo "$1 == $2" | bc` == "1" ]
then
        echo "Obie liczby są równe."
        exit
fi
if [ `echo "$1 > $2" | bc` == "1" ]
then
        echo "Pierwsza liczba jest większa."
        exit
else
        echo "Druga liczba jest większa."
        exit
fi
line 14: syntax error near unexpected token 'fi'
line 14 'fi'

Dobra dziła mi na innej maszynie pod linuxem a pod Windows przez Cygwin własnie ten bląd wyskakuje


Dzieki za odpowiedz

Aman

  • Gość
Bash Porównanie 2 liczb
« Odpowiedź #1 dnia: 2011-05-20, 13:29:26 »
Za bardzo kombinujesz moim zdaniem

if [ $1 -lt $2 ]; then 
echo "Pierwsza liczba wieksza"
else
echo "Druga liczba większa"
fi

arctgx

  • Gość
Bash Porównanie 2 liczb
« Odpowiedź #2 dnia: 2011-05-20, 15:28:56 »
Wypróbuj środowisko w bashu przeznaczone specjalnie do obliczania wyrażeń arytmetycznych:
(( $a < $b )) && echo tak || echo n
http://www.uniforum.chi.il.us/slides/bash1.pdf - zbiór przykładów, które polecam na takie okazje. Przede wszystkim
help '(('
help let
man -LC bash