仅提取bash中字符串/大括号之间的值

仅提取bash中字符串/大括号之间的值,bash,Bash,原文: 2013-08-29 08:51:24 777 IPMS 0123456 [Prce=101.078804, Size=1540000, even=15476.6] 嗨,有人能帮我从原文中提取以下内容吗 2013-08-29 "08:51:24,777" IPMS 0123456 101.078804 1540000 15476.6 你可以试试这个: cat file.txt | tr '\[Prce=Siz,vn]' \ ' ' | awk -F" " '{$

原文:

2013-08-29 08:51:24 777 IPMS 0123456 [Prce=101.078804, Size=1540000, even=15476.6]
嗨,有人能帮我从原文中提取以下内容吗

2013-08-29 "08:51:24,777" IPMS 0123456 101.078804 1540000 15476.6
你可以试试这个:

cat file.txt | tr '\[Prce=Siz,vn]' \ '            ' | awk -F" " '{$4="IPMS"; print}'
像那样复制并尝试一下。

怎么样:

sed 's/\(, \)\?[[:alpha:]]\+=/ /g; s/[][]//g' <<<"$text"

sed的/\(,\)\?[[:alpha:]\+=/g;s/[[]//g'这是一个相当宽泛的问题,您的标题与您的描述不匹配。考虑将更多的输入与所需的输出一起添加。另外,到目前为止您尝试了什么?原始文本有足够的空间,并且在[]中有值。我只想提取[]内的值(例如:101.078804 1540000等)以及其他值。尝试了一些awk和剪切组合,如awk-F'[,]'{print}'OzoneVolcker1_20150430.txt | cut-d=“[”-f1:f5 | cut-d=“]”-f1:F5然后你的问题提供了这个解释和更具代表性的数据是的,塞德做到了。非常感谢你在这方面的帮助。非常感谢格伦和安德鲁