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

aws-cli调用bash定义的queue_url变量报InvalidAddress错误如何解决

问题根因

AWS CLI默认返回JSON格式,通过--query提取的字符串结果会自带包裹的双引号,存入$queue_url变量后会被一并传入后续命令,导致SQS识别URL时格式非法报错。

解决方法

  • 方法1:在获取队列URL的aws命令后追加--output text参数,直接返回无包裹引号的纯文本内容,修改赋值行即可:
queue_url=$(aws sqs list-queues --query QueueUrls[0] --output text)
  • 方法2:如果需要保留原有输出格式,可通过bash参数扩展手动移除变量中的双引号:
# 原有赋值逻辑不变,新增一行去除引号
queue_url=$(aws sqs list-queues --query QueueUrls[0])
queue_url=${queue_url//\"/}

完整修正脚本

调用aws命令时变量建议用双引号包裹,避免URL含特殊字符时出现解析异常,修正后的完整可运行脚本如下:

aws sqs create-queue --queue-name MessagesQueue

queue_url=$(aws sqs list-queues --query QueueUrls[0] --output text)

queue_check=$(aws sqs get_queue_attributes --queue_url "$queue_url" --attribute-names ApproximateNumberOfMessages --query Attributes[0].ApproximateNumberOfMessages)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 22:24:03