2011-01-01 9 views
1

私は、次のスクリプトを持っている:case文でbashスクリプトを終了するには?

#!/bin/sh 
#Script bc : Celsius <-> Fahrenheit 

echo "Temperature ?" 
read Temp 

echo "Celsius or Fahrenheit ?" 
echo "c) Celsius" 
echo "f) Fahrenheit" 
read case; 

Celsius=$(echo "scale=1;(($Temp-32)/9)*5;" | bc) 
Fahrenheit=$(echo "scale=1;(($Temp/5)*9)+32;" | bc) 

case $case in 

c) read Celsius | echo "Temp. F : "$Fahrenheit;; 
f) read Fahrenheit | echo "Temp. C : "$Celsius;; 

esac 

私の問題は、答えは(正確に)与えられた後、私は戻ってプロンプトにもたらしたわけではない、ということです。私はそのスクリプトを終了してプロンプトに戻るために復帰する必要があります。

私は何が間違っていますか?事前に

おかげ

THG

+0

を使用してくださいあなたはドンので、」 'switch'ステートメントに見てメニュータイプのスクリプトを作成するときにホイールを再作成する必要があります – SiegeX

+0

Bashでは、 'switch'ではなく' select'です。 –

+0

'switch'を'選択する '! – SiegeX

答えて

4

それはであなたをやっている最後のcase内の文を「読み取り」です。

case $case in 

c) echo "Temp. F : "$Fahrenheit;; 
f) echo "Temp. C : "$Celsius;; 

esac 
関連する問題