gpt4 book ai didi

json - 如何使用带双引号和单引号的 bash 变量

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:45:51 27 4
gpt4 key购买 nike

我正在为 bash 上的 json 编写个人解析器。所以,我需要做一行的grep。例如,我的 json 文件的一部分。

{
"host": "127.0.0.1",
"hhost": "127.0.0.2",
}

当然,在尝试之后 cat json.txt | grep 主机,我收到:

"host": "127.0.0.1",
"hhost": "127.0.0.1",

我发现,如何只找到 host 而没有 hhost。我用过

cat json.txt | grep '"主机"'

一切都很好

"host": "127.0.0.1",

但我想在 bash 脚本中使用它:

#!/bin/bash

#in a future, i want to read variable var from reading from console
var=host
search='"$var"'
echo $search

结果,我有:

"$var"

我做错了什么?你能给我建议吗?

最佳答案

你可以使用 jq , 要为此解析 JSON 文件,您首先需要一个适当的有效 json

{
"host": "127.0.0.1",
"hhost": "127.0.0.2"
}

然后你可以做类似的事情:

#/bin/sh

HOST=$(jq '.host' data.json)
echo $HOST
...

关于json - 如何使用带双引号和单引号的 bash 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46022557/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com