Shell 脚本中 curl 取得HTTP返回的状态码

转载 http://blog.csdn.net/u013690521/article/details/52598731

shell curl 取得HTTP返回的状态码

curl -I -m 10 -o /dev/null -s -w %{http_code} www.baidu.com
  • 1

    shell curl 取得HTTP返回的状态码

  • -I 仅测试HTTP头
  • -m 10 最多查询10s
  • -o /dev/null 屏蔽原有输出信息
  • -s silent 模式,不输出任何东西
  • -w %{http_code} 控制额外输出

如果此命令写入Shell 脚本的话,需注意

result_code=`curl -I -m 10 -o /dev/null -s -w %{http_code} www.baidu.com`

需加上标红的符号` 此符号不是单引号,是数字1旁边的符号,才能识别此命令。






  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以使用以下命令获取curl返回值: ``` curl -s -o /dev/null -w "%{http_code}" http://example.com ``` 其,`-s`表示静默模式,不输出任何信息;`-o /dev/null`表示将curl的输出重定向到/dev/null,即不输出到终端;`-w "%{http_code}"`表示输出HTTP状态码。 如果需要在shell脚本获取curl返回值,可以使用以下语句: ``` status=$(curl -s -o /dev/null -w "%{http_code}" http://example.com) echo $status ``` 其,`$()`表示执行命令并将结果赋值给变量`status`,然后使用`echo`命令输出变量值。 ### 回答2: curl是一个非常常用的网络工具,可以用来访问、下载文件和网络资源等。在使用curl时,我们有时候需要获取返回值来判断请求是否成功或者出错。而我们可以通过shell脚本获取curl返回值。 获取curl返回值可以通过curl命令的返回码来实现。curl命令成功的返回码是0,而其他的返回码则表示出现了错误。我们可以通过$?来获取上一个命令的返回值,也就是curl命令的返回值。 以下是一个示例脚本,使我们可以更好的理解如何获取curl返回值: #!/bin/bash result=$(curl -I -m 5 -o /dev/null -s -w %{http_code} http://example.com) if [ $result -eq 200 ]; then echo "访问成功" else echo "访问失败" fi 在这个脚本,我们使用了curl的-I参数来获取HTTP头部信息,同时使用-m参数设置了最大请求时间为5秒钟。为了防止curl命令输出信息,我们使用了-o参数将结果输出到/dev/null。最后,我们使用了-w参数来指定输出格式,即仅输出HTTP状态码。输出信息存储在$result变量。 接下来,我们使用if语句来判断结果,如果返回值为200,则输出“访问成功”,否则输出“访问失败”。 总之,shell脚本可以很方便地获取curl返回值,并且可以根据返回值来执行相应的操作。这样可以大大提高我们在使用curl命令时的效率。 ### 回答3: 在shell脚本获取curl返回值可以使用$?变量。当curl执行成功时,$?变量的值为0,否则为1。我们可以在curl命令执行之后使用echo $?来输出返回值。 例如,我们可以使用以下代码来获取curl返回值: #!/bin/bash curl -I http://www.example.com/ if [ $? -eq 0 ]; then echo "curl执行成功" else echo "curl执行失败" fi 在上面的例子,我们使用curl获取www.example.com的头信息。我们使用$?变量检查curl是否执行成功,并根据返回值输出相应的消息。如果curl成功执行,$?值为0,我们将输出“curl执行成功”。如果curl执行失败,$?值为1,我们将输出“curl执行失败”。 总结:在bash shell脚本,使用$?变量来获取上一条命令的返回值,以便进一步处理命令的执行结果。在使用curl获取Web服务的响应时,我们可以使用$?变量来检查curl执行是否成功。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值