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

如何向bash脚本传入应答和按键操作以自动化配置AWS SSO账户

问题原因

默认的echo命令不会解析\n转义字符,你传入的第三个换行实际是字面量字符串,没有被识别为回车信号,同时你原来的语句只有2个换行符,刚好对应前两次输入的确认,第三次选择role的回车信号没有被传入。

可行解决方案

  • 方案1:给echo添加-e参数开启转义解析,同时补充第三个回车对应的换行符
    echo -e "foo\nbar\n\n" | aws configure sso --profile baz
    
  • 方案2:使用兼容性更好的printf命令(推荐,避免不同shell下echo实现差异导致的问题)
    printf "foo\nbar\n\n" | aws configure sso --profile baz
    
  • 方案3:如果管道输入因为AWS CLI检测到非TTY环境不生效,使用expect工具模拟终端交互
    #!/usr/bin/expect
    spawn aws configure sso --profile baz
    # 匹配第一个提示内容,可替换为你实际遇到的提示关键词
    expect "SSO start URL"
    send "foo\r"
    # 匹配第二个提示内容
    expect "SSO region"
    send "bar\r"
    # 匹配role选择提示
    expect "role"
    send "\r"
    interact
    
    编写完成后给脚本加执行权限chmod +x sso_config.exp,直接运行即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 16:09:04