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

如何在PowerShell中将AWS Secrets Manager获取的私钥设为环境变量

在PowerShell中保留格式导出AWS Secrets Manager密钥到环境变量

问题原因

直接将AWS命令输出赋值给环境变量时,PowerShell会把外部命令的多行输出拆分为数组元素,赋值为字符串时自动用空格替换换行,导致私钥格式错乱。

解决方法

方法1:分步捕获并赋值

先捕获带完整换行的输出,再赋值给环境变量:

# 捕获输出时保留原始换行
$SECRET_KEY = (aws secretsmanager get-secret-value --secret-id arn:aws:secretsmanager:us-east-1:12345:secret:non-prod/testing/private-key-8PPof --query 'SecretString' --output text) | Out-String -NoNewLine

# 赋值给环境变量
$env:SECRET_KEY = $SECRET_KEY

方法2:一步完成赋值

无需中间变量,直接将处理后的输出赋值给环境变量:

$env:SECRET_KEY = aws secretsmanager get-secret-value --secret-id arn:aws:secretsmanager:us-east-1:12345:secret:non-prod/testing/private-key-8PPof --query 'SecretString' --output text | Out-String -NoNewLine

说明

Out-String -NoNewLine的作用是将PowerShell拆分的输出数组重新拼接为单个字符串,保留原始换行符,同时避免在字符串末尾额外添加换行。这样赋值给环境变量后,私钥的换行格式就能完整保留。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 11:27:16