使用 Systems Manager 在 Windows EC2 实例上执行 运行 AWS CLI 命令

Use Systems Manager to Run AWS CLI Commands on Windows EC2 Instance

目前我正在尝试使用 Systems Manager 在 EC2 实例上执行 AWS CLI 命令。我希望系统管理员 运行 以下内容:

aws s3 cp <origin directory> s3://<destination directory>

但是当我 运行 它通过 AWS-RunPowerShellScript 文档时,这是我收到的输出:

aws : The term 'aws' is not recognized as the name of a cmdlet, function, script file, or 
operable program. Check the 
spelling of the name, or if a path was included, verify that the path is correct and try 
again.
At C:\ProgramData\Amazon\SSM\InstanceData\i- 
06a4de60a263996a1\document\orchestrationf5777e-08c8-4385-9ab4-cdc85c846f
24\awsrunPowerShellScript[=13=].awsrunPowerShellScript\_script.ps1:1 char:1
+ aws s3 cp C:\private s3://private
+ ~~~
+ CategoryInfo          : ObjectNotFound: (aws:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException

当我通过 RDP 进入 Windows 实例并执行相同的命令时,文件会毫无问题地放入 AWS 中的 S3 存储桶中。

我是不是遗漏了什么,或者有更好的方法吗?我正在尝试使此过程尽可能可脚本化,而无需 SSH 连接。感谢所有意见,谢谢!

如上述评论所述,AWS Systems Manager 使用的用户没有将 AWS CLI 添加为 PATH 变量。

我认为 AmazonSSMAgent 需要重新启动才能获取对 Path 变量的更改。