我需要key
从标准 bash 中的 JSON 获取一个,并找到以下内容:
echo '{"first_key": "value", "second_key": "value2"}' | python -mjson.tool | grep 'first_key'
但这会返回:
"first_key": "value",
我怎样才能返回value
,即不是键,并删除引号和逗号。
谢谢。
$ echo '{"first_key": "value", "second_key": "value2"}' | python -c 'import sys, json; print(json.load(sys.stdin)[sys.argv[1]])' first_key
value
由于您grep
在此处标记它是一个解决方案(尽管Ignacio 的解决方案是正确的方法):
echo "..." | grep -oP "(?<=\"first_key\": \")[^\"]+"
输出:
$ echo '{"first_key": "value", "second_key": "value2"}' | grep -oP "(?<=\"first_key\": \")[^\"]+"
value