簡體   English   中英

如何對多行文本文件重復使用tail命令?

[英]How do I use tail command repeatedly for a text file with multiple lines?

我最近閱讀了很多有關tail命令的信息,我不能說我找到了解決問題的方法。 我有一個名為log.txt的文本文件,它包含3行:

vm2014-09 Classic轉發:Mla-site 12828034:3021:1298320 0000001110000000000 11/25/2013 2:24

vm2014-10轉發的應用程序:SPC站點238567034:3021:1298320 0000001110000000000 2013/11/25 3:54

vm2014-11經典轉發:Mla-site 12828034:3021:1298320 0000001110000000000 11/25/2013 4:49

我想獲得這些行的最后一部分現在我有了這段代碼

tail -c 17 log.txt

並且顯然返回了11/25/2013 4:49 ,這是文件的最后一行。 我想知道如何使其返回:

11/25/2013 2:24

11/25/2013 3:54

2013/11/25 4:49

謝謝!

從您的問題尚不清楚,您的log.txt文件是否具有固定的結構。 如果是這樣,我不會使用tail而是這樣:

cat log.txt | sed '/^\s*$/d' | awk '{print $(NF-1)" "$NF}'

sed刪除空白行, awk返回最后兩個以空格分隔的字段。 我懂了

11/25/2013 2:24
11/25/2013 3:54
11/25/2013 4:49

您還cut

tail log.txt | cut -d ' ' -f 7,8

字段7和8分別是日期和時間。 正如@JayInNyc所建議的那樣,這僅適用於給定的示例行。 不同格式的行會產生意外的結果。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM