天天看點

shell腳本執行個體之Charpter8-12

要求:編寫一個腳本讀入一些整數,分别輸出這些整數中奇數的個數和偶數的個數,并輸出0的個數.

實作腳本如下:   

<code>#!/bin/bash</code>

<code>#charpter_8-12</code>

<code>declare</code> <code>-a arr2</code>

<code>echo</code> <code>"Please input some integer numbers seprated by SPACE:"</code>

<code>read</code> <code>-a arr2</code>

<code>counter_odd=0</code>

<code>counter_even=0</code>

<code>counter_0=0</code>

<code>for</code> <code>i </code><code>in</code> <code>"${arr2[@]}"</code>

<code>do</code>

<code>        </code><code>if</code> <code>[[ i -</code><code>ne</code> <code>0 ]]</code>

<code>        </code><code>then</code>

<code>                </code><code>if</code> <code>[[ i%2 -</code><code>eq</code> <code>0 ]]</code>

<code>                </code><code>then</code>

<code>                      </code><code>let</code> <code>counter_even+=1</code>

<code>                </code><code>else</code>

<code>                      </code><code>let</code> <code>counter_odd+=1</code>

<code>                </code><code>fi</code>

<code>        </code><code>else</code>

<code>                </code><code>let</code> <code>counter_0+=1</code>

<code>        </code><code>fi</code>

<code>done</code>

<code>echo</code> <code>"偶數個數:$counter_even"</code>

<code>echo</code> <code>"奇數個數:$counter_odd"</code>

<code>echo</code> <code>"0的個數:$counter_0"</code>

腳本的執行效果:

<code>[root@localhost charpter8]</code><code># sh 8-12</code>

<code>Please input some integer numbers seprated by SPACE:</code>

<code>10 11 0 12 13 0 14 15 0</code>

<code>偶數個數:3</code>

<code>奇數個數:3</code>

<code>0的個數:3</code>

<code>-12 -13 -14 0 12 13 14 15 0 17</code>

<code>偶數個數:4</code>

<code>奇數個數:4</code>

<code>0的個數:2</code>

<code>[root@localhost charpter8]</code><code>#</code>

可以看到準确的輸出了結果.

本文轉自 marbury 51CTO部落格,原文連結:http://blog.51cto.com/magic3/1429696