使用变量构建 curl URl

Build curl URl using variables

提问人:Scott 提问时间:6/30/2023 更新时间:6/30/2023 访问量:31

问:

我正在尝试使用 curl 遍历一个列表,如果 ID 并发送 DELETE 以取消每个 ID

我被困在将变量注入 url 以供 curl 使用

我正在使用更简单的东西开始/测试

这工作正常,并在 $queued_builds 中输出 ID 列表

for build in $queued_builds; do echo "$build"; done

230
231
232
233

但是,如果我尝试注入/使它们成为 URL 的一部分,它会失败(只是在这里使用 echo 来模拟/检查 URL 值)

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

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

可以以这种方式构建 URL 吗?

非常感谢

shell for-loop 变量 curl

评论

1赞 larsks 6/30/2023
确定。这个问题没有什么具体的;您可以使用变量在 shell 脚本中构建字符串。你说,“它失败了”;你能提供更多关于事情是如何失败的细节吗?带有语句的循环是否产生预期的输出?curlforecho
1赞 glenn jackman 6/30/2023
queued_builds其中可能隐藏了字符。显示什么?printf '%q\n' "$build"
1赞 Scott 6/30/2023
嗯,看起来我的数字数组不正确。 它们被捕获为带有新行的单个字符串,而不是多个 x3 位字符串的数组 没有考虑过这一点。我认为我需要检查填充数组的命令。 感谢您指明我需要关注的地方。printf '%q\n' "$queued_builds" 243$'\n'244$'\n'245$'\n'246$'\n'247$'\n'248$'\n'249(az pipelines runs list --status notstarted | grep _apis/build/Builds | cut -d "/" -f9 | grep -o '[0-9]*')

答: 暂无答案