我有以下日志文件:
example.com - - - 127.0.01 [22/Sep/2013:07:22:22 +0000] "POST /api/test.php HTTP/1.1" 200 355 "-" "-" "{\x22id\x22:\x22 ... }}}"
example.com - - - 127.0.01 [22/Sep/2013:07:22:22 +0000] "POST /api/test.php HTTP/1.1" 200 355 "-" "-" "{\x22id\x22:"{\x22 ... }}}"
我想提取第一个{\x22
到最后一个}
所以我使用以下 sed 命令:
cat test.txt | sed -r 's/.+?"(\{.+\})".*/\1/g'
然而,它给了我
{\x22id\x22:\x22 ... }}}
{\x22 ... }}}
但我想要
{\x22id\x22:\x22 ... }}}
{\x22id\x22:"{\x22 ... }}}