在 shell 脚本中添加前缀到 json 响应

add prefix in shell script to json resonse

我想为命中端点输出的字段添加一些前缀。

file.sh

result=$(curl -s <someEndpoint>)
echo $result

我有一个 cronjob 可以定期访问该端点;

* * * * * /root/file.sh | jq .field > /root/file.txt 2>&1

我需要在 .field 中添加“start”。 我创建了另一个 file2.sh:

prefix="start"
val=$(cat /root/file.txt)
concat="${prefix}${val}"
echo $concat

输出如下: 从 file.txt 开始“值”

我想要“从 file.txt 开始的值”。我该怎么做?

似乎更好的解决方案是使用 jq -r .field 输出纯文本而不是 JSON 字符串,但由于您明确想要使用 json,您可以使用jq 再次:

$ echo '"string"' | jq '"start" + .'
"startstring"