You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Bash脚本循环检查URL重定向无输出,如何实现预期结果?

批量检查URL重定向的脚本修正方案
  • 核心问题分析:你的脚本中,domains数组里的元素已经是带http://前缀的完整URL,但循环执行curl时又额外拼接了http://,导致实际请求的URL变成http://http://my-url1.com这种错误格式,自然无法返回正确的重定向结果。

  • 修正后的基础脚本:去掉循环中多余的http://,同时保留你原本的curl逻辑,还可以增加URL标识让结果更清晰:

#!/bin/bash

declare -a domains=("http://my-url1.com" "http://my-url2.com" "http://my-url3.com")

for i in "${domains[@]}"
do 
 echo "检查目标URL: $i"
 curl -v -L "$i" 2>&1 | grep -i "^< location:" | head -n 1
 echo "------------------------"
done
  • 更高效的优化方案:使用curl -I参数仅获取HTTP响应头(无需下载页面内容),配合-L跟随重定向,再用-s屏蔽无关进度输出,能大幅提升检查效率:
#!/bin/bash

declare -a domains=("http://my-url1.com" "http://my-url2.com" "http://my-url3.com")

for url in "${domains[@]}"
do 
 echo "当前检查URL: $url"
 curl -s -I -L "$url" | grep -i "^location:" | head -n 1
 echo "------------------------"
done

内容的提问来源于stack exchange,提问作者Somethingwhatever

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 08:50:03