shell 整理(36)===看規律寫數列
阿新 • • 發佈:2017-10-06
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)===看規律寫數列