日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

gawk的使用方法( 三 )


果一樣 , 它會印出現在的記錄(record) 。要印出空白行可使用"print
""" 。印出一段固定的文字 , 可用雙引號將文字的兩邊括起來 , 例如
"print "Hello there"" 。
這里是一個例子 , 它會把每個輸入記錄的前二個欄位印出:gawk "{print $1,$2}" shipped結果如下所示:
Jan 13
Feb 15
Mar 15
Apr 31
May 16
Jun 31
Jul 24
Aug 15
Sep 13
Oct 29
Nov 20
Dec 17Feb 26
Mar 24
Apr 214.2 Output Separators前面我們已提過如果 print 敘述包含有多個 item , item 之間
用逗點分開 , 則印出時各個item會被一個空白隔開 。你能夠使用任何
的字串作為 output field separator , 可以居贍誚ū涫?OFS 的設
定來更改 output field separator 。OFS 的初始值為" " , 即一格的
空白 。整個 print 敘述的輸出被稱為 output record 。print 敘述輸
出 output record 之後 , 會接著輸出一個字串 , 此字串稱為 output
record separator 。內建變數 ORS 用來指明此字串 。ORS 的初始值
為 " " , 也就是換行 。下面這個例子會印出每個記錄的第一個欄位和第二個欄位 , 此二
(p16 of 46)
個欄位之間以分號";"分開 , 每行輸出之後會加入一個空白行 。gawk "BEGIN {OFS=";"; ORS=" "} {print $1, $2}" BBS-list結果如下所示:
aardvark;555-5553alpo-net;555-3412barfly;555-7685bites;555-1675camelot;555-0542core;555-2912fooey;555-1234foot;555-6699macfoo;555-6480sdace;555-3430sabafoo;555-2127
4.3 printf敘述printf 敘述會使得輸出格式較容易精確地控制 。printf 敘述可以
指定每個 item 印出的寬度 , 也可以指定數字的各種型式 。printf 敘述的格式如下:printf format, item1, item2, ...print 與 printf 的差別是在於 format, printf 的引數比 print
(p18 of
多了字串 format 。format 的型式與 ANSI C 的 printf 之格式相同 。printf 并不會做自動換行的動作 。內建變數 OFS 與 ORS 對 printf 敘
述沒有任何影響 。格式的指定以字元"%"開始 , 後面接著格式控制字母 。格式控制字母如下所示:"c" 將數字以 ASCII 字元印出 。
例如"printf "%C",65"會印出字元"A" 。"d" 印出十進位的整數 。"i" 印出十進位的整數 。"e" 將數字以科學符號的形式印出 。
例如print "$4.3e",1950
(p19 of結果會印出"1.950e 03" 。"f" 將數字以浮點的形式印出 。"g" 將數字以科學符號的形式或浮點的形式印出 。數字的絕對值如果
大於等於0.0001則以浮點的形式印出 , 否則以科學符號的形式印
出 。"o" 印出無號的八進位整數 。"s" 印出一個字串 。"x" 印出無號的十六進位整數 。10至15以"a"至"f"表示 。"X" 印出無號的十六進位整數 。10至15以"A"至"F"表示 。"%" 它并不是真正的格式控制字母 , "%%"將印出"%" 。在 % 與格式控制字母之間可加入 modifier , modifier 是用來進一
步控制輸出的格式 ??赡艿?modifier 如下所示:"-" 使用在 width 之前 , 指明是向左靠齊 。如果"-"沒有出現 , 則會在
被指定的寬度向右靠齊 。例如:printf "%-4S", "foo"會印出"foo " 。"width" 這一個數字指示相對應的欄位印出時的寬度 。例如:printf "%4s","foo"會印出" foo" 。width 的值是一個最小寬度而非最大寬度 。如果一個 item 的
值需要的寬度比 width 大 , 則不受 width 的影響 。例如printf "%4s","foobar"
將印出"foobar" 。".prec" 此數字指定印出時的精確度 。它指定小數點右邊的位數 。如
果是要印出一個字串 , 它指定此字串最多會被印出多少個字
元 。

第五章 patterns
在 gawk 程式里面 , 當 pattern 符合現在的輸入記錄(record) , 其
相對應的 action 才會被執(zhí)行 。5.1 Pattern的種類這里對 gawk 的各種 pattern 型式作一整理:/regular expression/
(p22 of
一個 regular expression 當作一個 pattern 。每當輸入記錄 (

推薦閱讀