Mac终端curl批量请求无进度与URL显示问题及开启方法咨询
新版curl批量请求时怎么恢复旧版的序号+URL提示
想让新版curl像旧版那样,批量请求(比如curl "site.com/[a-z].html")时自动显示[X/Y] 目标URL的追踪信息,有两个靠谱办法:
办法一:自定义输出格式(和旧版效果完全一致)
用curl的--write-out(简写-w)参数,结合内置变量生成提示,同时保留响应内容:
curl "site.com/[a-z].html" -w "\n[%{current_file}/%{num_files}] %{url_effective}\n"
如果想要提示出现在响应内容前面(和旧版完全同步),可以用个shell小技巧调整输出顺序:
curl "site.com/[a-z].html" -s -w "[%{current_file}/%{num_files}] %{url_effective}\n" | while IFS= read -r line; do if [[ "$line" =~ ^\[.*\] ]]; then echo "$line" else echo "$line" fi done
这里用到的curl内置变量说明:
%{current_file}:当前请求在批量序列里的序号%{num_files}:批量请求的总个数%{url_effective}:实际请求的完整URL
办法二:开启详细模式(适合调试)
要是还想看更多请求细节(比如请求头、响应状态码),可以加--verbose(简写-v)参数,它会自动带上批量序号提示:
curl -v "site.com/[a-z].html"
不过这个模式会输出一堆调试信息,平时单纯追踪请求的话用办法一更合适。
内容的提问来源于stack exchange,提问作者tpk2
相关产品推荐
相关产品推荐

