我有一个json的字符串(存储在MESSAGE
中):
{"folder":"blah", "file":"halb"}
我希望以echo blah/halb
打印。
我试过了:
echo $MESSAGE | jq .photo.folder -r "/" echo $MESSAGE | jq .photo.file -r
似乎仍然被绞死echo $MESSAGE | jq .photo.folder -r "\/" echo $MESSAGE | jq .photo.file -r
似乎它显示jq: \/: No such file or directory
jq: echo: No such file or directory
如何打印斜线?
答案 0 :(得分:2)
您只需要对jq
进行一次调用:使用add
函数进行字符串连接:
jq -r '[.photo.folder, "/", .photo.file] | add' << END
{"photo": {"folder":"blah", "file":"halb"}}
END
blah/halb
更简单:jq -r '.photo.folder+ "/"+ .photo.file'
答案 1 :(得分:0)
我找到了它:
echo $(echo $MESSAGE | jq .photo.folder -r)$'/'$(echo $MESSAGE | jq .photo.file -r)