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

如何使用变量构建curl URL?循环批量发DELETE请求遇变量注入问题

问题解决

完全可以通过这种方式构建URL,你的问题只是命令输入时的语法错误导致的。

错误原因

你在测试时错误地给分号加了反斜杠\;,这会让Shell把分号当成普通字符,而非用来分隔do与后续命令的语法符号,进而导致Shell认为循环体未完成,因此出现for>的等待输入提示符。

正确写法

测试URL构建(echo模拟)

for build in $queued_builds; do echo "https://www.test.org/$build"; done

执行后会正常输出每个ID对应的URL:

https://www.test.org/230
https://www.test.org/231
https://www.test.org/232
https://www.test.org/233

实际发送DELETE请求

把echo替换成curl命令即可:

for build in $queued_builds; do curl -X DELETE "https://www.test.org/$build"; done

更健壮的写法(处理含特殊字符的ID)

如果$queued_builds中的ID可能包含空格或特殊字符,建议先将其转为数组再遍历,避免拆分错误:

# 将ID列表转为数组
queued_builds_array=($queued_builds)
# 遍历数组发送请求
for build in "${queued_builds_array[@]}"; do
    curl -X DELETE "https://www.test.org/$build"
done

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 14:12:12