1 求总分并且输出:
2 文件a.txt
3 学号 姓名 性别 年龄
4 1001 张三 男 18
5 1002 赵四 男 19
6 1003 李丽 女 18
7 文件b.txt
8 学号 语文 数学 英语
9 1001 80 70 98
10 1002 78 80 70
11 1003 72 80 89
12
13
14 方法1:
15 #!/bin/sh
16 paste a.txt b.txt ccc.txt
17 cat ccc.txt |awk 'NR==1{ printf "%10s %10s %10s %10s %10s %10s %10s
",$1,$2,$3,$6,$7,$8,"总分"}NR>=2{{zongfen=$6+$7+$8}{printf "%10s %10s %10s %10s %10s %10s %10s
",$1,$2,$3,$6,$7,$8,zongfen}}'
18
19 方法2:
20 #!/bin/sh
21 for i in `cat aa.txt |awk '{ print $1}'`
22 do
23 a=`grep $i aa.txt |awk '{print $1}'`
24 b=`grep $i aa.txt |awk '{print $2}'`
25 c=`grep $i aa.txt |awk '{print $3}'`
26 d=`grep $i aa.txt |awk '{print $4}'`
27 e=`grep $i bb.txt |awk '{print $2}'`
28 f=`grep $i bb.txt |awk '{print $3}'`
29 g=`grep $i bb.txt |awk '{print $4}'`
30 if [ $a != "学号" ]
31 then
32 sum=`grep $i bb.txt |awk '{$5=$2+$3+$4;print $5 }'`
33 echo $a" " $b" " $c" " $d" " "$e " "$f " $g" " $sum" "
34 else
35 echo $a" " $b" " $c" " $d" " $e" " $f" " $g" " "总分"" "
36 fi
37 done
38