(2)BEGIN和END語句塊

2022-06-12 17:15:12 字數 646 閱讀 1146

awk的所有**(目前這麼認為)都是寫在語句塊中的。

例如

[root@docker-01 ~]# awk''

a.txt

[root@docker-01 ~]# awk

'' a.txt

每個語句塊前面可以有pattern,所以格式為:

pattern1pattern2

語句塊可分為3類:begin語句塊、end語句塊和main語句塊。其中begin語句塊和end語句塊都是的格式分別為beginend,而main語句塊是一種統稱,它的pattern部分沒有固定格式,也可以省略,main**塊是在讀取檔案的每一行的時候都執行的**塊。

分析下面三個awk命令的執行結果:

awk

'begin

'a.txt

awk'

end'

a.txt

awk'

beginend

' a.txt

根據上面3行命令的執行結果,可總結出如下有關於begin、end和main**塊的特性:

begin**塊:

main**塊:

end**塊:

Perl指令碼包含多個BEGIN及END塊

眾所周知,perl中的begin塊在其它 執行前執行,而end塊在其它 執行後執行。可是,如果perl指令碼中同時包含多個begin及end塊呢,其執 況如何?看下面測試 usr bin perl w use strict endprint the other line logical n begi...

標準庫函式begin和end的使用

除了使用下標運算子來訪問string物件的字元或vector等容器物件的元素外,還有另外一種更通用的機制也可以實現同樣的目的,這就是迭代器。所有的標準庫容器都可以使用迭代器,但是只有少數幾種才同時支援下標運算子。嚴格來說,string物件不屬於容器型別,但是string支援很多與容器型別類似的操作。...

關於Perl語言中BEGIN和END的使用

關於perl語言中begin和end的使用 perl語言學習者必須關注 很強實用性。有些時候我們需要在perl業務 開始執行之前做一些初始化工作,或者在結束的時候做一些收尾的工作,perl語言提供了這樣的塊begin和end幫助perl程式設計師實現這些操作。下面我先看乙個簡單的例子做為begin和...