2012-08-25 79 views
0

awk中的詞(可能是變量?)如NF,RF,FS是什麼意思?我相信他們有一些預先定義的含義和用法。Awk瞭解變量

請讓我知道,如果有更多這樣的變量,必須知道一個初學者?

-Thanks

+3

8強大的'awk'變量:http://www.thegeekstuff.com/2010/01/8-powerful-awk-built-in-variables-fs-ofs-rs-ors-nr-nf- filename-fnr/ – Steve

+3

您是否正在嘗試學習'awk'而未讀取您可以在Google輕鬆找到的數百個優秀介紹之一? – tripleee

+0

我認爲[SO]是一個可以解決初學者(像我這樣的)簡單問題的地方,可以學習編程語言。你是否設想它是一個問題? – mtk

回答

1

這些內置變量,在awk中他們有特殊的意義。 覆蓋此主題的是part in GAWK reference manual。 特別是:

FS

這是輸入字段分隔符(參見字段分隔符)。值 是匹配輸入記錄中字段間分隔的單字符字符串或多字符正則表達式 。如果 值爲空字符串(「」),則記錄 中的每個字符都將成爲一個單獨的字段。 (此行爲是徒勞無功的延伸。當FS爲空字符串,POSIX awk不指定行爲。 然而,AWK的一些其它版本中也把「」專)

的默認值是「」,一由單個空間組成的字符串。作爲 特殊例外,此值意味着任何空格TAB, 和/或換行符都是單個分隔符。它還會導致空格,TAB, 和記錄開頭和結尾處的換行符被忽略。

NF

在當前輸入記錄字段的數量。當每個 創建一個新字段或$ 0 更改(請參閱字段)時,NF將被設置爲每次讀取新記錄的時間爲 。

與本節介紹的大多數變量不同,爲NF分配 值可能會影響awk的內部工作。特別是,可以使用對NF的分配來創建或從當前記錄中刪除字段 。請參閱更改字段。