当前位置: 首页 > 面试题库 >

将json值从文件设置为redis

仉昂熙
2023-03-14
问题内容

我有一个bash.sh脚本:

#!/usr/bin/env bash

val=$(cat ../my-microservice/conf/config.json)

echo "set my-microservice-config ${val}" |  redis-cli

其中config.json:

{
  "key" : "value"
}

当我运行它时,我得到:

ERR未知命令’}’

如何从json文件正确设置json值?


问题答案:

如果你正在尝试设置 字符串 的值,my-microservice- config关键看你的JSON文件的内容(或其他任何与此有关的,包括二进制),最简单的方法是使用-x选项redis- cli
阅读的最后一个参数 逐字的命令, stdin。例如:

$ redis-cli -x set my-microservice-config < config.json
OK

对于您的示例,它将存储:

$ redis-cli get my-microservice-config
"{\n      \"key\" : \"value\"\n}\n"

要存储JSON数据的紧凑表示形式,可以jq .
-c
flag一起使用:

$ jq -c . config.json | redis-cli -x set my-microservice-config
OK
$ redis-cli get my-microservice-config
"{\"key\":\"value\"}\n"

请注意,Redis本机不支持JSON,但是如果需要解释的JSON值(JSON数据类型),则可以使用ReJSON模块。



 类似资料:
  • 根据JWK规范,“儿童”的定义如下。 “孩子”(密钥ID)参数用于匹配特定的密钥。例如,此 用于在密钥翻转期间在JWK Set中的一组密钥中进行选择。“孩子”值的结构是 未指定的。当在JWK Set中使用“孩子”值时,JWK Set中的不同 键应该使用不同的“孩子”值。(一个 例子,其中不同的键可能使用相同的孩子值,如果 他们有不同的kty(键类型)值,但被应用程序认为是 等效的替代使用他们。)

  • 我正试图从mysql查询中重构数据,我花了几天时间想要弄清楚如何做到这一点。mysql数据: 转换为datatables的可读对象 我的当前函数是 返回 我不知道如何做到这一点,我正在尝试自学js

  • 问题内容: 我想将配置文件名称设置为整个程序包,但我不知道如何。如果在哪里不是简单的方法,那么我必须用注释标记包和子包中的每个类。 标签不支持这样的属性,所以我不知道。 问题答案: 您可以将个人资料设置为: 文件-用于xml配置 Java配置类 在它们的每一个中,您都可以对特定的软件包使用组件扫描。

  • 我对Vue是新来的。我想从一个登录表单中读取,并通过它加载一些按employeeID.json命名的json文件,比如(10000001.json,20000001.json),并将json对象设置为全局变量,以便在所有组件中轻松地访问它。 首先,我不知道如何动态加载json文件。使用不起作用。有人建议使用应该可以。但例子不多,不知道该把require放在哪里…… 其次,在employeeId进入

  • 我想从文件中读取数据并将其添加到存储在内存中的对象中。text.txt文件中的数据大致如下所示: 我试图将其设置为一个空对象,如下所示: 但是,当我将记录到控制台时,它显示如下:

  • 尝试使用spring绑定属性文件中的int值 它也不起作用。 请建议什么是使它工作的方法。