1、統計列數
cat XX |awk -F"\t" '{print NF}' |more
cat xx |awk -F "," '{if($2=="3"){ print $2}}' |more
持續更新。。
(1)字段劃分的細節 三種完全不同的方法使awk分割字符 1)記錄的前導空白字符和結尾空白字符被忽略,字段用空格和/或製表符來分割-->因爲FS默認是一個空格 2)使用其他的單個字符來分割字段 3)設置不止一個字段作爲字段分隔符,實質是
[root@centos ~]# cat f 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 awk '{for(i=1;i<=NF;i++)a[NR,i]=$i}END{for(
[root@centos ~]# echo abcABC | /bin/gawk '{gsub(/([a-z])/, "x"); print $0}' xxxxxx [root@centos ~]# echo abcABC | /bin/
grep 、sed、awk被稱爲linux中的"三劍客"。 總結一下這三個"劍客"的特長。 grep 更適合單純的查找或匹配文本 sed 更適合編輯匹配到的文本 awk 更適合格式化文本,對文本進行較複雜格式處理 參考:aw
gawk1.01源碼awk3.c分析 我一邊讀源碼,一邊把自己的一些想法寫出來。我的筆記本外接了一個顯示器。 init_vars() 這個過程,對FS,NF,RS,NF,FILENAME,OFS,ORS,OFMT幾個變量進行初始化。
gawk1.01源碼安裝 續 今天是個好天氣,我昨天發現有衝突,看了會書,還是不得要領,今天把衝突進行研究,發現 Option 1, statements -> <Rule 24, tokens 2 .. 5> stateme
gawk1.01源碼分析awk.y衝突了 yang@DESKTOP-V9HS3B6:~/gawk101/gawk$ echo "hello:ok" | ./gawk 'BEGIN { FS=":"} > {print $1,$2}' he
gawk1.01源碼分析——各文件功能 今天就各個文件的基本功能談下我的理解。 一、awk.h頭文件 先列出數據結構 typedef struct hashnode HASHNODE; struct hashnode { HASHNO
gawk awk3.c源碼分析 本來昨天要完成的,昨天晚上睡得太早,就忘記了,今天打開電腦 ,第一件事,就是把這篇完成。 這個文件主要完成一些內部函數的定義。 先定義了一些外部變量,就於對應awk程序中的NF,FS,RS,NR,FILEN
編譯成功的gawk1.01源碼上傳了 世界上最幸福的事,就是把代碼編譯成功了。然後一個屏幕對代碼進行編輯,另一屏幕,進行測試,立即看到效果。太爽了。 今天,我把gawk1.01編譯成功,我開始進行一些簡單的測試,如從內置函數開始。如何測試
分享我修改後的一些源碼 我有時覺得現在的時代真好。有電腦可以用,有書可以讀。而且有那麼多的開源代碼可以供自己研究。我想,或許,這就是我們真正的天堂了。 我原來學習時,偏重於讀書,很少寫代碼,導致自己水平一直不高,現在我改變思路,以讀源碼爲
如何在大腦中模擬代碼運行 昨天,終於在筆記本上安裝好了ubuntu,這次沒有使用虛擬機。這樣,可以在ubuntu中使用圖形界面相關功能了。在win10下通過wsl使用ubuntu,不能使用圖形界面,感覺功能很受限。 心裏一想起這事,就覺得
gawk1.01源碼大體結構分析 昨天找gawk的選項,因爲我想分析其調試過程。我想根據其debug的過程,來分析程序。發現在awk1.c中有-D選項,試一下,結果出現一大堆: yang@DESKTOP-V9HS3B6:~/gawk101
gawk awk1.c源碼分析 今天接着讀代碼。前段時間迷上讀網絡小說,用kindle看小說,看得天昏地暗。讀小說鍛鍊了閱讀速度。 星期五購買了幾件打折的衣服。我要好好讀代碼,把購衣服的價值創造出來。 言歸正傳。我用一臺舊的筆記本不上網,
gnu awk1.01源碼編譯安裝——續 這個雙休日又把時間耗在了gawk1.01的編譯安裝了,我原來好象曾編譯過,但當時對代碼的理解不深刻,編譯過後,就沒如何讀代碼了。而且我的機器環境又多,當時好像是在windows下安裝bison,不