$ cat -A lab5.data1
Mike Harrington:(510) 548-1278:250:100:175
Christian Dobbi:(408) 538-2358:155:90:201
Susan Dalsass:(206) 654-6279:250:60:50
Archie McNichol:(206) 548-1348:250:100:175
Jody Savage:(206) 548-1278:15:188:150
Guy Quigley:(916) 343-6410:250:100:175
Dan Savage:(406) 298-7744:450:300:275
Nancy McNeil:(206) 548-1278:250:80:75
John Goldenrod:(916) 348-4278:250:100:175
Chet Main:(510) 548-5258:50:95:135
Tom Savage:(408) 926-3456:250:168:200
Elizabeth Stach:(916) 440-1763:175:75:300
要求写脚本达到以下效果:
***CAMPAIGN 1998 CONTRIBUTIONS***
________________________________________________________________________
NAME PHONE Jan | Feb | Mar | Total Donated
________________________________________________________________________
Mike Harrington (510) 548-1278 250 100 175 525
Christian Dobbi (408) 538-2358 155 90 201 446
Susan Dalsass (206) 654-6279 250 60 50 360
Archie McNichol (206) 548-1348 250 100 175 525
Jody Savage (206) 548-1278 15 188 150 353
Guy Quigley (916) 343-6410 250 100 175 525
Dan Savage (406) 298-7744 450 300 275 1025
Nancy McNeil (206) 548-1278 250 80 75 405
John Goldenrod (916) 348-4278 250 100 175 525
Chet Main (510) 548-5258 50 95 135 280
Tom Savage (408) 926-3456 250 168 200 618
Elizabeth Stach (916) 440-1763 175 75 300 550
_________________________________________________________________________
SUMMARY
_________________________________________________________________________
The campaign received a total of $6137.00 for this quarter.
The average donation for the 12 contributors was $511.42.
highest contribution was $300.00
The lowest contribution was $15.00
$ awk -f awk.sc lab5.data1
***CAMPAIGN 1998 CONTRIBUTIONS***
_________________________________________________________________
NAME PHONE JAN | FEB | MAR | Total Donated
_________________________________________________________________
Mike Harrington (510) 548-1278 250 100 175 525
Christian Dobbi (408) 538-2358 155 90 201 446
Susan Dalsass (206) 654-6279 250 60 50 360
Archie McNichol (206) 548-1348 250 100 175 525
Jody Savage (206) 548-1278 15 188 150 353
Guy Quigley (916) 343-6410 250 100 175 525
Dan Savage (406) 298-7744 450 300 275 1025
Nancy McNeil (206) 548-1278 250 80 75 405
John Goldenrod (916) 348-4278 250 100 175 525
Chet Main (510) 548-5258 50 95 135 280
Tom Savage (408) 926-3456 250 168 200 618
Elizabeth Stach (916) 440-1763 175 75 300 550
_________________________________________________________________
SUMARY
_________________________________________________________________
The campaign received a total of $6137.00 for this quarter.
The average donation for the 12 contributors was $511.42.
The highest contribution was $300
The lowest contribution was $15
这是我的代码:
$ cat awk.sc
BEGIN{FS=":"
print "\n"
print "\t\t ***CAMPAIGN 1998 CONTRIBUTIONS***"
print "_________________________________________________________________"
print "NAME\t\tPHONE\t\tJAN | FEB | MAR | Total Donated"
print "_________________________________________________________________"
highest = 0
lowest = 10000
}
{$6 = $3+$4+$5;print $1"\t"$2"\t"$3"\t"$4"\t"$5"\t"$6}
{total+=$6;average=total/12}
{if($5 > highest) highest = $5;}
{if($3 < lowest) lowest = $3;}
END{
print "_________________________________________________________________"
print "\t\tSUMARY"
print "_________________________________________________________________"
printf "The campaign received a total of $" "%2.2f\n",total" for this quarter."
printf "The average donation for the 12 contributors was $" "%2.2f\n",average"."
print "The highest contribution was $"highest
print "The lowest contribution was $"lowest
}
分享到:
相关推荐
### grep、sed、awk命令实例大练习 在Linux或Unix环境中,`grep`、`sed`和`awk`是三个非常强大的文本处理工具。通过掌握这些工具的基本用法及高级功能,用户可以高效地处理各种文本文件。下面将详细介绍如何使用...
### awk & sed 高级练习题解析 #### sed 命令详解 1. **删除一个文件的每行中的第1个字符** ```shell sed 's/^.//g' /etc/passwd ``` - **解析**:`s/^.//g` 表示将每行开头(`^`)的第一个字符(`.`)替换为...
-rwxr-xr-x@ 1 sanpangdan staff 489926 11 13 2022 awk实战案例精讲.pdf drwxr-xr-x@ 5 sanpangdan staff 160 11 13 2022 awk实战案例精讲:课程所用示例文件 -rwxr-xr-x@ 1 sanpangdan staff 236384 11 13 2022 ...
最后,书中提供了大量示例和实战练习,帮助读者巩固理论知识并提高实际操作能力。通过阅读和实践,读者不仅能掌握awk的基本用法,还能掌握如何利用awk解决实际问题,实现高效的文本处理和数据分析。 总之,...
在这个压缩包里,我们看到一系列的示例文件,如`Ex_6.001-6.054`到`Ex_6.193`,这些很可能是`awk`编程的练习或教程。每个文件可能代表一个特定的练习,涵盖了`awk`的不同功能和用法,例如模式匹配、条件语句、循环、...
压缩包中的三个PDF文件——"l-awk2-pdf.pdf"、"l-awk1-pdf.pdf"、"l-awk3-pdf.pdf"很可能是逐步深入讲解awk的教程,可能分别覆盖基础概念、进阶技巧和实践案例。通过阅读这些资料,你可以系统地学习awk,提升在Linux...
通过实际的案例练习,可以更好地掌握这两个工具的使用。 这本书的第三版可能增加了更多实用技巧和最新的功能介绍,对于想要提升Linux运维技能的人来说是一份宝贵的资源。同时,书中可能涵盖了sed和awk在实际工作中...
**awk入门最好的资料** 在IT领域,awk是一个...通过阅读和练习这个文档中的内容,你将能够掌握awk的基础知识,为进一步学习高级特性和应用打下坚实基础。记得不断实践,让理论与实战相结合,才能真正成为awk的大师。
读者在学习Sed和awk的过程中,应当合法合规地进行练习,确保不侵犯他人的知识产权。同时,读者还应具备一定的自我保护意识,对于书籍来源、内容的合法性应当进行适当的甄别和判断。在使用书籍中的知识进行技术操作时...
本资料包中的"awkѧϰ"和"awk学习"文件可能包含实战案例、练习题及解释,是学习awk的好资源。建议结合这些实例逐步实践,加深对awk的理解,提升文本处理技能。不过,请注意,如果资料存在质量问题,可以考虑寻找更新...
3. **动作**:在awk中,动作通常是一段代码,如`{print}`,它会打印当前行。动作可以包含变量赋值、条件语句(if-else)、循环(for、while)等。 4. **内置变量**:awk有许多内置变量,如`NR`表示已读取的行数,`...
### sed和awk简明手册知识点总结 #### 一、sed简介 - **基本概念**: - sed(stream editor)是一种非交互式的面向字符流的编辑器,它...- 实践是学习这两种工具的最佳方法,建议结合实际案例进行练习以加深理解。
3. **流程控制**:在awk中使用条件语句(if-else)和循环(for, while)来处理复杂逻辑。 4. **函数与变量**:了解sed和awk内置的函数,如sub()和gsub()(用于替换)以及awk的内置变量,如NF(字段数量)和NR(行号...
### AWK手册精要解析 #### 一、AWK简介 ...通过了解其基本概念和工作原理,结合实际操作练习,可以快速掌握AWK的核心技能,并将其应用于各种场景中。希望这篇指南能帮助你在AWK的学习之旅上更进一步。
DEMO.PRJ可能是演示或练习案例,让用户实践所学的知识。而www.pudn.com.txt可能是一个包含使用AWK处理的实际文本样本,用于配合教程进行实践操作。 学习DOS版的AWK,首先需要理解其基本语法,包括模式(Pattern)和...
AWK是一种编程语言,用于在Linux环境下对文本和数据进行处理和分析。它是许多UNIX系统中的标准工具,并且是文本处理的强大...通过适当的练习和实践,用户可以掌握AWK的各种高级功能,实现自动化处理日常数据的需求。
在提供的`awk programming.rar`文件中,可能包含了关于awk编程的教程、示例和练习,可以帮助你深入理解和掌握awk的使用技巧。 总结来说,`awk`和`bash`是Linux/Unix环境下强大的文本处理和脚本编程工具,它们的结合...
"awk-master"这个文件名可能是指一个AWK项目的主目录,可能包含了示例脚本、练习、测试用例或者关于AWK的完整教程。通过研究这个目录中的内容,学习者可以逐步掌握AWK语言的核心概念,如模式匹配、内置变量、函数、...