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

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

一道 number 分隔 erp strong ons rac 默認 取出

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的加法運算,以後遇到類似的情況都可以借鑒。

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