我想從日誌文件中刪除一些動態文本。我能夠使用regex
和grep -oP
來提取它,但是,相同的正則表達式不工作 與sed
命令。使用正則表達式搜索和替換
的樣本數據:(閱讀ABCDEF只有LMNOP之間方便有關資料)
XXX 2 13:53:35 XXXX0-0-0 XXXXXXXX[3513]: ABCDEF[XXXX]: 1472846015.555671: LMNOP(79): XXXXXXXXXXXXX - XXXXXX XX XXX XXX XXXXX XX XXXXX XXXX XXX XXXX XXX
以下是我想從日誌文件中刪除數據。我可以使用正則表達式+ grep
將其解壓:
grep -Po ']: [0-9]{10}\.[0-9]{6}:' sample
]: 1472846015.555671:
現在,如果我使用相同的正則表達式與sed
命令它不是helping.Any建議?
我用sed下面的命令,它返回了我未更改的文件。
sed "s/]: [0-9]{10}\.[0-9]{6}://" input
或
awk '{gsub(/]: [0-9]{10}\.[0-9]{6}:/,"")}1' input
我需要以下的輸出:
XXX 2 13:53:35 XXXX0-0-0 XXXXXXXX[3513]: ABCDEF[XXXX LMNOP(79): XXXXXXXXXXXXX - XXXXXX XX XXX XXX XXXXX XX XXXXX XXXX XXX XXXX XXX
甚至更好:
XXX 2 13:53:35 XXXX0-0-0 XXXXXXXX[3513]: ABCDEF[XXXX]::LMNOP(79): XXXXXXXXXXXXX - XXXXXX XX XXX XXX XXXXX XX XXXXX XXXX XXX XXXX XXX