【发布时间】:2019-12-10 12:18:02
【问题描述】:
给定以下字符串:
arn:aws:secretsmanager:us-east-1:3264873466873:secret:foo/bar 1564681234.974 foo/bar {"username":"admin","password":"admin123","secret_key":"KASJDFJHAKHFKAHASDF"} 4e397333-3797-4f0b-ad7e-8c1cc0ed041c VERSIONSTAGES AWSCURRENT
在 shell 脚本中,如何仅提取 JSON 部分以得到如下结果:
{"username":"admin","password":"admin123","secret_key":"KASJDFJHAKHFKAHASDF"}
我可以使用两个 sed 命令来做到这一点:
echo $longString | sed 's/^.*{/{/' | sed 's/}.*$/}/'
但想知道是否有一种方法可以只使用一个命令。
【问题讨论】:
-
grep -o '{.*}'也许?