2010-06-20 165 views

回答

56
END{print} 

應該這樣做。感謝 Ventero 誰懶得提交這個答案。

+0

哦,這比我的方式簡單得多。尼斯 – 2010-06-20 19:51:29

12

這是必須使用awk嗎?爲什麼不使用tail -n 1 myFile

+0

因爲尾巴不夠快awk – yael 2010-06-20 19:51:15

+5

@yael完全沒有;對於大文件,「tail -1」將比「awk」快。我嘗試了一個約3米行文件;尾部是瞬間的,而awk花了.44s – 2010-06-20 19:54:14

+6

'-1'形式已被棄用。使用'tail -n 1'。 – 2010-06-20 22:54:24

12

爲作業使用正確的工具。既然你想得到一個文件的最後一行,尾巴是作業的適當工具,特別是如果你有一個大文件。在這種情況下,Tail的文件處理算法更加高效。

tail -n 1 file 

如果你真的想用awk,

awk 'END{print}' file 

編輯:tail -1 file棄用

2

可以使用sed以及實現這一目標。不過,我個人推薦使用tailawk

不管怎麼說,如果你想通過sed做的,這裏有兩種方式:

方法1:

sed '$!d' filename 

方法2:

sed -n '$p' filename 

在這裏,文件名是的名稱有數據需要分析的文件。

3

找出一個文件的最後一行:

  1. 使用SED(流編輯器):sed -n '$p' fileName

  2. 使用尾巴:tail -1 fileName

  3. 用awk:awk 'END { print }' fileName

+0

請使用代碼標記(\'代碼\')。 – 2014-08-25 22:42:25