Shell 脚本封装 Curl 请求及响应码校验
在自动化运维或简单监控场景中,经常需要在 Shell 里调用外部接口。这里分享一个基础示例,演示如何封装 Curl 请求并解析 HTTP 状态码。
首先定义一个函数来统一处理请求逻辑,同时设置合理的超时时间,避免脚本卡死。
#!/bin/bash
function httpRequest()
{
# curl 请求,-s 静默模式,-m 总超时,--connect-timeout 连接超时
info=$(curl -s -m 10 --connect-timeout 10 -I "$1")
# 获取返回码,从响应头中提取 HTTP 状态码
code=$(echo "$info" | grep "HTTP" | awk '{print $2}')
# 对响应码进行判断
if [ "$code" == "200" ]; then
echo "请求成功,响应码是$code"
else
echo "请求失败,响应码是$code"
fi
}
httpRequest "$1"
运行脚本时传入目标 URL 即可,例如:
bash curl_cs.sh www.baidu.com
如果一切正常,终端会显示请求成功的信息。当然,实际生产中可以根据业务需求扩展更多判断逻辑,比如结合其他工具做更复杂的健康检查。

