AWS CLI执行update-function-code阻塞,如何无需回车自动执行后续步骤?
解决AWS CLI v2执行
update-function-code后等待回车的问题 我之前在使用AWS CLI v2的时候也碰到过这个一模一样的问题——明明不需要关注更新结果,命令却非要等我按回车才能继续执行后续步骤。试过你说的那几种方法没用?试试下面这几个方案,亲测在v2.0.12版本有效:
方案1:禁用AWS CLI的默认分页功能
AWS CLI v2默认开启了分页器,当命令输出内容达到一定长度时,就会触发交互等待。你可以通过两种方式关闭它:
- 临时在脚本中生效:在执行
update-function-code命令前,先设置环境变量:export AWS_PAGER="" aws lambda update-function-code --function-name my-function --zip-file fileb://my-file --region eu-west-1 - 永久全局生效:执行一次配置命令,以后所有CLI命令都不会再触发分页等待:
aws configure set cli_pager ""
方案2:指定命令的输出格式
强制指定输出格式为json或text,可以绕过分页器的触发逻辑,直接输出结果而不暂停:
aws lambda update-function-code --function-name my-function --zip-file fileb://my-file --region eu-west-1 --output json
方案3:重定向输入或输出
如果完全不需要关注命令的输出和交互,直接把输入重定向到/dev/null,或者把输出丢弃:
# 重定向输入,跳过交互等待 aws lambda update-function-code --function-name my-function --zip-file fileb://my-file --region eu-west-1 < /dev/null # 同时丢弃标准输出和错误输出,彻底无干扰执行 aws lambda update-function-code --function-name my-function --zip-file fileb://my-file --region eu-west-1 > /dev/null 2>&1
这几个方案里,我个人最推荐方案1的全局配置,一劳永逸解决所有CLI命令的分页等待问题;如果只是针对单个脚本,方案2或3也能快速解决你的问题。
内容的提问来源于stack exchange,提问作者Gabriel Furstenheim
相关产品推荐
相关产品推荐

