我正在编写一个 bash 脚本,它的 json 值存储在一个变量中,现在我想使用 Jq 提取该 json 中的值。使用的代码是。
json_val={"code":"lyz1To6ZTWClDHSiaeXyxg","redirect_to":"http://example.com/client-redirect-uri?code=lyz1To6ZTWClDHSiaeXyxg"}
code_val= echo"$json_val" | jq '.code'
Run Code Online (Sandbox Code Playgroud)
这会引发没有此类文件或目录的错误。
如果我将其更改为
json_val={"code":"lyz1To6ZTWClDHSiaeXyxg","redirect_to":"http://example.com/client-redirect-uri?code=lyz1To6ZTWClDHSiaeXyxg"}
code_val=echo" $json_val " | jq '.code'
Run Code Online (Sandbox Code Playgroud)
这不会引发任何错误,但 code_val 中的值为 null。
如果尝试手动执行它echo {"code":"lyz1To6ZTWClDHSiaeXyxg","redirect_to":"http://example.com/client-redirect-uri?code=lyz1To6ZTWClDHSiaeXyxg"} | jq '.code'会引发解析数字字母错误。
在第一种情况下我该怎么做。
我使用 sql 语句DROP DATABASE KEYCLOAK;这会在 h2 控制台中引发语法错误。
错误
drop database keycloak;
Syntax error in SQL statement "DROP DATABASE[*] KEYCLOAK "; expected "TABLE, INDEX, USER, SEQUENCE, CONSTANT, TRIGGER, VIEW, ROLE, ALIAS, SCHEMA, ALL, DOMAIN, TYPE, DATATYPE, AGGREGATE"; SQL statement:
drop database keycloak [42001-193] 42001/42001 (Help)
Run Code Online (Sandbox Code Playgroud)
语法上似乎没有任何错误。请帮忙。