从一行中提取特定单词

Jør*_*gen 6 awk sed

我希望这里有人可以帮助我.我在文本文件中有一行看起来像这样:

Jan  8 14:12:56 kernel: SRC=1.2.3.4 DST=255.255.255.255 LEN=104 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=UDP SPT=44224 DPT=14000 LEN=84
Run Code Online (Sandbox Code Playgroud)

我想提取以SRC =,PROTO =和DPT =开头的单词.我的目标是最终得到一条如下所示的线:

1.2.3.4 UDP 14000
Run Code Online (Sandbox Code Playgroud)

我希望解决方案是使用sed,awk或类似的bash,如果可能的话.

Fre*_*Foo 7

使用Sed与组:

sed -r 's/.*SRC=(\S+).*PROTO=(\S+).*DPT=(\S+).*/\1 \2 \3/'
Run Code Online (Sandbox Code Playgroud)