如果curl响应JSON中的数字>500,则执行Bash并运行脚本[duplicate]

xoshrz7s  于 2022-11-13  发布在  其他
关注(0)|答案(1)|浏览(107)

此问题在此处已有答案

Parsing JSON with Unix tools(45个答案)
10天前关闭。
此帖子已在10天前编辑并提交审核,未能重新打开帖子:
原始关闭原因未解决
我做了以下更新:

curl -s "http://192.168.11.93:436/getmovieplayinfo?" | grep -Po '(?<=,"total_time":)(.*?)(?=})'

这给了我号码5757,在这之后的代码是什么来检查“如果〉500那么”?
老三问:
我需要帮助创建bash脚本和运行脚本,如果从curl响应的数字是〉500。
我希望脚本看起来像这样:

if curl "http://192.168.11.93:436/getmovieplayinfo?" and if total_time is > 500
then
    echo "run run run"                   
fi

这是curl的回应:
{“成功”:真,“消息”:“",“播放信息”:{“bd_文件路径”:“",“文件路径”:“BDMV”,“电子播放状态”:0,“电子播放模式”:0,“当前时间”:5,“总时间”:5757}}
谢谢你的帮助。

k75qkfdt

k75qkfdt1#

你可以使用jq实用程序,它对处理JSON数据很有帮助:

if curl "http://192.168.11.93:436/getmovieplayinfo?" | jq -e '.playinfo.total_time > 500 | not'; then
    echo "run run run";
fi

相关问题