![](/img/trans.png)
[英]How to set a multicharacter record separator RS in GNU awk so it encompasses the new lines?
[英]Reprint a Dynamic RS (Record Separator) in awk
在此示例中,我使用以下 awk 命令僅打印包含特定文本字符串 (3705@192.168.1.5) 的部分/記錄。 這很有效,但 awk 在打印輸出時刪除了記錄分隔符。 對於基於通用文本的 RS,我可以使用 {print RS, $0} 重新打印它,但在這種情況下,awk 在每條記錄之前打印正則表達式。
awk 'BEGIN{ RS = "([01]?[0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9].[0 -9][0-9][0-9]" ;} /3705@192.168.1.5/ {print RS , $0}' /var/log/abc.log
有沒有辦法在每條記錄之前打印 RS(在這種情況下為時間戳)? 謝謝
您一定已經在使用 gawk 因為您使用的是多字符 RS 所以只需打印RT
而不是RS
。 閱讀 Arnold Robbins 所著的 Effective Awk Programming 第 4 版一書。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.