2013-03-12 128 views
0

我是新的shell腳本在linux內,我希望能夠從用戶採取任何3號碼,並按升序顯示。我已經設法按降序排列,但沒有升序。顯示號碼shell腳本

任何人都可以告訴我我必須對代碼做些什麼改變嗎?另外,如果我這樣做效率低下,請告訴我。我正在努力學習儘可能多的東西。

謝謝!

#!/bin/bash                                                                 
#Accepts 3 numbers and displays the number in ascending order                                                     

echo "Enter the first number" 
read num1 
echo "Enter the second number" 
read num2 
echo "Enter the third number" 
read num3 

allNumbers="$num1 $num2 $num3" 

echo $allNumbers|tr " " "\n"|sort|tr "\n" " "                                                         
+1

不要在得到答案後摧毀問題。這是不可接受的行爲(無論誰提供了答案)。 – 2013-03-12 06:21:10

回答

3

對於整理號碼,您應該使用sort -n。對於降,使用sort -nr

+2

@ Teddy13您的評論是無用的 – Kaunteya 2013-03-12 06:27:29

1
echo $(printf "%s\n" $num1 $num2 $num3 | sort -n) 

printf的命令拆分輸出到3線; sort -n按升序數字順序排序; echo $(...)將排序的輸出放平成一行。