[英]Using Sed to extract substring from text with large text file
我有一些大的以分號分隔的文本文件(防火牆日志),我需要從中提取信息。 我一直在尋找使用sed(對我來說是新的),但是我一直在轉轉,所以無法正常工作。
文本文件中的每一行看起來都類似於:
96;3Nov2015;23:59:00;10.22.20.13;log;accept;;eth0.500;inbound;VPN-1 & FireWall-1;;CN=FW1-FW1,O=BBB-FWMAN-01..gh;Network;353;{B2C0E4-0EFB-48AF-A1E-6B7A2543EB};Outbound DNS;;;;;;;;;;;;;;;;;;172.1.1.4;8.8.8.8;udp;domain-udp;58364;Internal;External;domain-udp;;;;143.4.63.101;;250;1;;;******;******;;******;******;******;******;******;******;;;;;;;;;;******;;******;;;;;;;;;;;;;;;;;;;;;;******;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;******;;******;******;;;******;;;;;;;;;;;;;;;;;;;;;;;******;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
我需要在每一行上提取文本的“ 172.1.1.4; 8.8.8.8; udp; domain-udp; 58364”部分。 (從第33個分號到第37個分號)
任何幫助,將不勝感激。
問候,
斯圖爾特
順便說一句,我正在使用OSX的Macbook上執行此操作
如果不涉及轉義和引用,則可以使用cut
:
cut -d';' -f34-38 file
謝謝,我最終使用了:
awk'BEGIN {FS = OFS =“;”} {打印$ 12,$ 14,$ 34,$ 35,$ 36,$ 37,$ 45,$ 46}'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.