比如
str="abc d:aaa, timestamp:
dwadwa d:bbb, timestamp:
rererere d:ccc, timestamp:
"
怎么使用awk提取最终内容为一行: aaa, bbb, ccc
我知道在正则中用 ()可以将想要保留的内容保留,然后在$1 表示这个内容,但是在awk中似乎无效。
我的尝试:
awk '{sub(/.+d:(\w+).+/n/,$1); print }'
肯定是报错了,或者有什么别的办法可以实现这个功能也行,但是最好是用awk实现,多谢了~
https://blog.csdn.net/qq_34591366/article/details/84654005
可以定义一个变量然后接收 awk 的输出结果:
result=`echo $str | awk '{sub(/.+d:(\w+).+/n/,$1); print }'`
Tab 上面那个字符是执行命令的,用它执行命令返回的结果赋值给一个变量。