在awk中,如果呼叫next,那麼next之後的命令就都不執行了。此行文字的處理到此結束,開始讀取下一條記錄並操作。
例項如下:
zoer@ubuntu:~$ catdata
1000
naughty
500cc
400zoer
100zoer@ubuntu:~$ awk
' print $1,$2}
'data
naughty
500cc
400
比如說我們有乙個data檔案,存放了每個人的出差費用。想要列印出來。但是第一行總費用不要列印。那麼使用awk的next忽略掉第一行即可。
與next相似,getline也是讀取下一行資料。但是與next不同的是,next讀取下一行之後,把控制權交給了awk指令碼的頂部。但是getline卻沒有改變指令碼的控制,讀取下一行之後,繼續執行當前的awk指令碼。getline執行之後,會覆蓋$0的內容。
例子如下:
zoer@ubuntu:~$ catdata
name naughty
25shandong
age
14hah,here is test
zoer@ubuntu:~$ catd$
1=="
name"$
1=="
age"
zoer@ubuntu:~$ awk -f d data
name naughty
25 shandong
例子中,如果遇到行首是name的,就把下一行讀取出來並列印。如果行首是age,就僅僅列印本行。
從執行結果也可以看出來,hah,here is test並沒有列印出來。因為它沒有匹配name或者age開頭。
getline #讀取資料檔案中的行資料,
#這樣就可以取出對應的資料了。
getlin與get的區別
getlin a,len 與get a,len 都是讀取一串字串,遇到回車即停 但是getlin會跳過回車,下一次讀取的時候直接從輸入佇列中跳過回車,讀取下乙個字元 而get不會跳過回車,而是把回車留在輸入佇列中,下一次讀取的時候依然會讀取到回車,所以很多時候用乙個get 把回車讀到,接著讀取下乙個...
什麼是網域名稱以及WSGI 以及URL 以及web
www.baidu.com baidu.com是網域名稱.com是網域名稱字尾.還有.cn org edu gov net等 url 統一資源定位符,也就是 www是worldwide wide web的意思 也叫全球資訊網,或web,是乙個由許多文字鏈結組成的超文字系統,通過internet訪問,...
jasper(Ireport)table以及引數
我是用jaspersoft ireport designer設定模板的。這裡主要介紹如何通過使用table元件以及傳遞引數,資料來自資料庫。閒話少說,直接開始。1.首先建立模板,設計sql的時候,最好要有資料。如果你的報表全部用table做來,就相當於主表沒有任何從資料庫讀出的資訊,可以將sql設計...