⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 00000007.htm

📁 一份很好的linux入门资料
💻 HTM
📖 第 1 页 / 共 4 页
字号:
的资料档。&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;exit&nbsp;叙述会使得&nbsp;gawk&nbsp;程式停止执行而跳出。然而,如果&nbsp;END&nbsp;出现&nbsp;<BR>,它会去执行&nbsp;END&nbsp;的&nbsp;actions。&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>第八章&nbsp;&nbsp;内建函式(Built-in&nbsp;Functions)&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;内建函式是&nbsp;gawk&nbsp;内建的函式,可在&nbsp;gawk&nbsp;程式的任何地方呼叫内建&nbsp;<BR>函式。&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;8.1&nbsp;数值方面的内建函式&nbsp;<BR>&nbsp;<BR>int(x)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;求出&nbsp;x&nbsp;的整数部份,朝向&nbsp;0&nbsp;的方向做舍去。例如:int(3.9)&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;是&nbsp;3,int(-3.9)&nbsp;是&nbsp;-3。&nbsp;<BR>sqrt(x)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;求出&nbsp;x&nbsp;正的平方根值。例&nbsp;sqrt(4)=2&nbsp;<BR>exp(x)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;求出&nbsp;x&nbsp;的次方。例&nbsp;exp(2)&nbsp;即是求&nbsp;e*e&nbsp;。&nbsp;<BR>log(x)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;求出&nbsp;x&nbsp;的自然对数。&nbsp;<BR>sin(x)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;求出&nbsp;x&nbsp;的&nbsp;sine&nbsp;值,x&nbsp;是弪度量。&nbsp;<BR>cos(x)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;求出&nbsp;x&nbsp;的&nbsp;cosine&nbsp;值,x&nbsp;是弪度量。&nbsp;<BR>atan2(y,x)&nbsp;&nbsp;求&nbsp;y/x&nbsp;的&nbsp;arctangent&nbsp;值,所求出的值其单位是弪度量。&nbsp;<BR>rand()&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;得出一个乱数值。此乱数值平均分布在&nbsp;0&nbsp;和&nbsp;1&nbsp;之间。这个&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;值不会是&nbsp;0,也不会是&nbsp;1。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;每次执行&nbsp;gawk,rand&nbsp;开始产生数字从相同点或&nbsp;seed。&nbsp;<BR>srand(x)&nbsp;&nbsp;&nbsp;&nbsp;设定产生乱数的开始点或&nbsp;seed&nbsp;为&nbsp;x。如果在第二次你设&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;定相同的&nbsp;seed&nbsp;值,你将再度得到相同序列的乱数值。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;如果省略引数&nbsp;x,例如&nbsp;srand(),则现在的日期、时间会&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;被当成&nbsp;seed。这个方法可使得乱数值是真正不可预测的。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;srand&nbsp;的传回值(return&nbsp;value)是前次所设定的&nbsp;seed&nbsp;值。&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;8.2&nbsp;字串方面的内建函式&nbsp;<BR>&nbsp;<BR>index(in,&nbsp;find)&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;它会在字串&nbsp;in&nbsp;里面,寻找字串&nbsp;find&nbsp;第一次出现的地方,传回值是&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;字串&nbsp;find&nbsp;出现在字串&nbsp;in&nbsp;里面的位置。如果在字串&nbsp;in&nbsp;里面找不到字&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;串&nbsp;find,则传回值为&nbsp;0。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;例如:&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print&nbsp;index(&quot;peanut&quot;,&quot;an&quot;)&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;会印出&nbsp;3。&nbsp;<BR>&nbsp;<BR>length(string)&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;求出&nbsp;string&nbsp;有几个字元。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;例如:&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;length(&quot;abcde&quot;)&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;是&nbsp;5。&nbsp;<BR>&nbsp;<BR>match(string,regexp)&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;match&nbsp;函式会在字串&nbsp;string&nbsp;里面,寻找符合&nbsp;regexp&nbsp;的最长、最靠&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;左边的子字串。传回值是&nbsp;regexp&nbsp;在&nbsp;string&nbsp;的开始位置,即&nbsp;index&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;值。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;match&nbsp;函式会设定内在变数&nbsp;RSTART&nbsp;等於&nbsp;index,它也会设定内在变&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;数&nbsp;RLENGTH&nbsp;等於符合的字元个数。如果不符合,则会设定&nbsp;RSTART&nbsp;为&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;0、RLENGTH&nbsp;为&nbsp;-1。&nbsp;<BR>&nbsp;<BR>sprintf(format,expression1,...)&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;举&nbsp;printf&nbsp;类似,但是&nbsp;sprintf&nbsp;并不印出,而是传回字串。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;例如:&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sprintf(&quot;pi&nbsp;=&nbsp;%.2f&nbsp;(approx.)',22/7)&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;传回的字串为&quot;pi&nbsp;=&nbsp;3.14&nbsp;(approx.)&quot;&nbsp;<BR>&nbsp;<BR>sub(regexp,&nbsp;replacement,target)&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;在字串&nbsp;target&nbsp;里面,寻找符合&nbsp;regexp&nbsp;的最长、最靠左边的地方,&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;以字串&nbsp;replacement&nbsp;代替最左边的&nbsp;regexp。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;例如:&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;str&nbsp;=&nbsp;&quot;water,&nbsp;water,&nbsp;everywhere&quot;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sub(/at/,&nbsp;&quot;ith&quot;,str)&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;结果字串str会变成&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&quot;wither,&nbsp;water,&nbsp;everywhere&quot;&nbsp;<BR>&nbsp;<BR>gsub(regexp,&nbsp;replacement,&nbsp;target)&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;gsub&nbsp;与前面的&nbsp;sub&nbsp;类似。在字串&nbsp;target&nbsp;里面,寻找符合&nbsp;regexp&nbsp;的&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;所有地方,以字串&nbsp;replacement&nbsp;代替所有的&nbsp;regexp。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;例如:&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;str=&quot;water,&nbsp;water,&nbsp;everywhere&quot;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;gsub(/at/,&nbsp;&quot;ith&quot;,str)&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;结果字串str会变成&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;'wither,&nbsp;wither,&nbsp;everywhere&quot;&nbsp;<BR>&nbsp;<BR>substr(string,&nbsp;start,&nbsp;length)&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;传回字串&nbsp;string&nbsp;的子字串,这个子字串的长度为&nbsp;length&nbsp;个字元,&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;从第&nbsp;start&nbsp;个位置开始。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;例如:&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;substr(&quot;washington&quot;,5,3)&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;传回值为&quot;ing&quot;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;如果&nbsp;length&nbsp;没有出现,则传回的子字串是从第&nbsp;start&nbsp;个位置开始&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;至结束。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;例如:&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;substr(&quot;washington&quot;,5)&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;传回值为&quot;ington&quot;&nbsp;<BR>&nbsp;<BR>tolower(string)&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;将字串string的大写字母改为小写字母。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;例如:&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tolower(&quot;MiXeD&nbsp;cAsE&nbsp;123&quot;)&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;传回值为&quot;mixed&nbsp;case&nbsp;123&quot;&nbsp;<BR>&nbsp;<BR>toupper(string)&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;将字串string的小写字母改为大写字母。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;例如:&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;toupper(&quot;MiXeD&nbsp;cAsE&nbsp;123&quot;)&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;传回值为&quot;MIXED&nbsp;CASE&nbsp;123&quot;&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;8.3&nbsp;输入输出的内建函式&nbsp;<BR>&nbsp;<BR>close(filename)&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;将输入或输出的档案&nbsp;filename&nbsp;关闭。&nbsp;<BR>&nbsp;<BR>system(command)&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;此函式允许使用者执行作业系统的指令,执行完毕後将回到&nbsp;gawk&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;程式。&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;例如:&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;BEGIN&nbsp;{system(&quot;ls&quot;)}&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>第九章&nbsp;&nbsp;使用者定义的函式(User-defined&nbsp;Functions)&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;复杂的&nbsp;gawk&nbsp;程式常常可以使用自己定义的函式来简化。呼叫使用&nbsp;<BR>者定义的函式与呼叫内建函式的方法一样。&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;9.1&nbsp;函式定义的格式&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;函式的定义可以放在&nbsp;gawk&nbsp;程式的任何地方。&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;一个使用者定义的函式其格式如下:&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;name&nbsp;(parameter-list)&nbsp;{&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;body-of-function&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;<BR>&nbsp;<BR>name&nbsp;是所定义的函式之名称。一个正确的函式名称可包括一序列的字&nbsp;<BR>母、数字、下标线&nbsp;(underscores),但是不可用数字做开头。&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;parameter-list&nbsp;是列出函式的全部引数(argument),各个引数之&nbsp;<BR>间以逗点隔开。&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;body-of-function&nbsp;包含&nbsp;gawk&nbsp;的叙述&nbsp;(statement)。它是函式定义&nbsp;<BR>里最重要的部份,它决定函式实际要做何种事。&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;9.2&nbsp;函式定义的例子&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;下面这个例子,会将每个记录的第一个栏位之值的平方与第二个&nbsp;<BR>栏位之值的平方加起来。&nbsp;<BR>&nbsp;<BR>{print&nbsp;&quot;sum&nbsp;=&quot;,SquareSum($1,$2)}&nbsp;<BR>function&nbsp;SquareSum(x,y)&nbsp;{&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;sum=x*x+y*y&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;sum&nbsp;<BR>}&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>第十章&nbsp;&nbsp;□例&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;这里将列出&nbsp;gawk&nbsp;程式的一些例子。&nbsp;<BR>&nbsp;<BR>gawk&nbsp;'{if&nbsp;(NF&nbsp;&gt;&nbsp;max)&nbsp;max&nbsp;=&nbsp;NF}&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;END&nbsp;{print&nbsp;max}'&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;此程式会印出所有输入行之中,栏位的最大个数。&nbsp;<BR>&nbsp;<BR>gawk&nbsp;'length($0)&nbsp;&gt;&nbsp;80'&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;此程式会印出一行超过&nbsp;80&nbsp;个字元的每一行。此处只有&nbsp;pattern&nbsp;被&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;列出,action&nbsp;是采用内定的&nbsp;print。&nbsp;<BR>&nbsp;<BR>gawk&nbsp;'NF&nbsp;&gt;&nbsp;0'&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;对於拥有至少一个栏位的所有行,此程式皆会印出。这是一个简&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;单的方法,将一个档案里的所有空白行删除。&nbsp;<BR>&nbsp;<BR>gawk&nbsp;'{if&nbsp;(NF&nbsp;&gt;&nbsp;0)&nbsp;print}'&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;对於拥有至少一个栏位的所有行,此程式皆会印出。这是一个简&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;单的方法,将一个档案里的所有空白行删除。&nbsp;<BR>&nbsp;<BR>gawk&nbsp;'BEGIN&nbsp;{for&nbsp;(i&nbsp;=&nbsp;1;&nbsp;i&nbsp;&lt;=&nbsp;7;&nbsp;i++)&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print&nbsp;int(101&nbsp;*&nbsp;rand())}'&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;此程式会印出□围是&nbsp;0&nbsp;到&nbsp;100&nbsp;之间的&nbsp;7&nbsp;个乱数值。&nbsp;<BR>&nbsp;<BR>ls&nbsp;-l&nbsp;files&nbsp;|&nbsp;gawk&nbsp;'{x&nbsp;+=&nbsp;$4};&nbsp;END&nbsp;{print&nbsp;&quot;total&nbsp;bytes:&nbsp;&quot;&nbsp;x}'&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;此程式会印出所有指定的档案之bytes数目的总和。&nbsp;<BR>&nbsp;<BR>expand&nbsp;file&nbsp;|&nbsp;gawk&nbsp;'{if&nbsp;(x&nbsp;&lt;&nbsp;length())&nbsp;x&nbsp;=&nbsp;length()}&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;END&nbsp;{print&nbsp;&quot;maximum&nbsp;line&nbsp;length&nbsp;is&nbsp;&quot;&nbsp;x}'&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;此程式会将指定档案里最长一行的长度印出。expand&nbsp;会将&nbsp;tab&nbsp;改&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;成&nbsp;space,所以是用实际的右边界来做长度的比较。&nbsp;<BR>&nbsp;<BR>gawk&nbsp;'BEGIN&nbsp;{FS&nbsp;=&nbsp;&quot;:&quot;}&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{print&nbsp;$1&nbsp;|&nbsp;&quot;sort&quot;}'&nbsp;/etc/passwd&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;此程式会将所有使用者的login名称,依照字母的顺序印出。&nbsp;<BR>&nbsp;<BR>gawk&nbsp;'{nlines++}&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;END&nbsp;{print&nbsp;nlines}'&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;此程式会将一个档案的总行数印出。&nbsp;<BR>&nbsp;<BR>gawk&nbsp;'END&nbsp;{print&nbsp;NR}'&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;此程式也会将一个档案的总行数印出,但是计算行数的工作由gawk&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;来做。&nbsp;<BR>&nbsp;<BR>gawk&nbsp;'{print&nbsp;NR,$0}'&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;此程式印出档案的内容时,会在每行的最前面印出行号,它的功&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;能与&nbsp;'cat&nbsp;-n'&nbsp;类似。&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>第十一章&nbsp;&nbsp;结论&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;gawk&nbsp;对於资料的处理具有很强的功能。它能够以很短的程式完成&nbsp;<BR>想要做的事,甚至一或二行的程式就能完成指定的工作。同样的一件&nbsp;<BR>工作,以&nbsp;gawk&nbsp;程式来写会比用其它程式语言来写短很多。&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;gawk&nbsp;是&nbsp;GNU&nbsp;所做的&nbsp;awk,它是公众软体(Public&nbsp;Domain)&nbsp;可免费使&nbsp;<BR>用。&nbsp;<BR>&nbsp;<BR><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -