1. 程式人生 > >shell 整理(36)===看規律寫數列

shell 整理(36)===看規律寫數列

shell 心得 思考

(一)寫如下所示數列

[[email protected] ding1]# bash 5.sh

2/1

3/2

5/3

8/5

13/8

21/13

34/21

55/34

89/55

144/89

233/144


shell代碼如下:


#!/bin/bash


>aa

>bb

echo 1 2 | xargs -n1 >aa


for i in `seq 20`

do

a=`cat aa | sed -n ‘‘$i‘p‘`

b=`cat aa |tail -1`

echo $(($a+$b)) >>aa

c=`cat aa | sed -n ‘‘$(($i+1))‘p‘`

echo $c/$a >>bb

done

cat bb


計算結果如下,用awk 計算

[[email protected] ding1]# bash 5.sh |awk -F ‘/‘ ‘{a+=$1/$2;print a}‘

2

3.5

5.16667

6.76667

8.39167

10.0071

11.6261

13.2437

14.8619

16.4799

18.098

19.716

21.334

22.9521

24.5701

26.1881

27.8062

29.4242

31.0422

32.6603

[[email protected] ding1]#


本文出自 “IT生活” 博客,請務必保留此出處http://dingxue.blog.51cto.com/12290895/1970438

shell 整理(36)===看規律寫數列