我的问题很简单 -当curl执行多个请求时,有没有办法显示每个URL的curl的单独退出状态?
让我们假设我需要检查站点a.com、b.com并c.com查看它们:
000,我需要显示curl的exit code。注意 - a.com、b.com、c.com在此代码/问题中用作示例。在真实的脚本中,我确实有一个有效的 URL 列表 - 其中超过 400 个具有非重叠模式 - 并且它们返回各种 HTTP 代码 - 200/4xx/5xx 以及 000。
000 是curl 无法建立连接的情况,但提供退出代码以了解阻止其建立连接的原因。就我而言,还有许多退出代码 - 6、7、35、60。
我尝试运行以下代码
unset a
unset rep
a=($(curl -s --location -o /dev/null -w "%{response_code}\n" {https://a.com,https://b.com,https://a.com}))
rep+=("$?")
printf '%s\n' "${a[@]}"
echo
printf '%s\n' "${rep[@]}"
Run Code Online (Sandbox Code Playgroud)
虽然上述代码返回每个单独请求的 HTTP 返回代码,但仅显示最后一个请求的退出代码。
000
000
000
60
Run Code Online (Sandbox Code Playgroud)
当我提供多个 URL 进行卷曲时,我确实需要能够记录单独的退出代码。这个问题有解决方法/解决方案吗?
一些附加信息:目前,我将所有 URL 放入一个数组中,并通过它运行一个循环,分别检查每个 URL。然而,浏览 …