Awscli执行操作返回结果附带PRE标识,如何去除该内容?
问题原因
PRE是AWS CLI处理S3路径时,对公共前缀(即S3模拟文件夹结构的路径片段)的默认输出标识。两个配置相近的项目表现不一致,通常是因为两者使用的aws-cli版本不同,或是CLI的全局输出、分页配置存在差异。
解决方法
- 方法1:在cp命令后追加
--output text参数,强制指定输出格式为纯文本,屏蔽默认格式化输出带来的PRE标识
调整后的CI脚本命令示例:
也可以提前配置全局输出格式规避:aws s3 cp <SOURCE> s3://<BUCKET_NAME>/ --recursive --output textaws configure set output text - 方法2:添加
--only-show-errors参数,仅在操作出错时输出日志,直接屏蔽正常上传过程的所有前缀相关输出,适合不需要上传明细日志的场景
示例命令:aws s3 cp <SOURCE> s3://<BUCKET_NAME>/ --recursive --only-show-errors - 方法3:对齐两个项目的aws-cli镜像版本,避免版本差异导致的默认输出规则不同。不要使用默认的latest标签镜像,指定固定版本号的aws-cli镜像即可,例如:
image: name: amazon/aws-cli:2.13.0 entrypoint: [""]
内容的提问来源于stack exchange,提问作者Shourya Sharma
相关产品推荐
相关产品推荐

