1. 程式人生 > >每日一道shell練習(10)——統計字元數

每日一道shell練習(10)——統計字元數

1. 習題

將下面這句話中字元數在6以內的單詞打印出來:

Bash also interprets a number of multi-character options .

2. 習題分析

思路:用for迴圈將每個單詞取出,才能單獨統計。for迴圈的分隔符有空格、tab鍵和回車鍵,剛好這句話的分隔符是空格鍵。

3. 指令碼

#!/bin/bash
line='Bash also interprets a number of multi-character options .'
sum=0
for s in $line
do 
  n=`echo $s | wc -c`
  if [ $n -lt 7 ];then
    echo $s
    sum=$[sum+1]
    #sum=`expr $sum + 1`
  fi
done

解釋:用wc -c 命令統計單詞的字元數,它會預設新增一個空格,所以if條件裡就用7來做條件了。我在寫指令碼的時候,加了一個sum統計字元數在6個以內的單詞的數量。大家要注意shell腳本里的算術運算,我這裡給了兩種方式來計算sum的加法運算,以後遇到類似的情況都可以借鑑。